CI 묻고 답하기

제목 $this->db->insert_string이 안먹히는 이유가 무엇일까요...
카테고리 CI 2, 3
글쓴이 정수리 작성시각 2017/01/09 14:23:29
댓글 : 5 추천 : 0 스크랩 : 0 조회수 : 15949   RSS

insert문을 짧게 하고자

 

$this->db->insert_stirng('테이블명', 데이터)을 사용하였습니다.

 

그런데 계속데이터가 들어가지 않네요;;

 

혹시 컨트롤러에서 데이터가 안 넘어 온것인가하여

 

var_dump를 찍어보니 데이터는 모델로 잘넘어 왔습니다.

 

그래서 쿼리를 

function regit($data){
		var_dump($data);
		//$sql = 'insert into jds_item(item_in_da, item_in_part, item_in_name, item_quantity, item_pr, item_sum_pr, item_out_da, item_out_part, item_out_name, item_kinds, item_life, item_state, item_disposal, item_reason, item_memo) values(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'; 
		
		//$result = $this->db->query($sql, array($data['item_in_da'], $data['item_in_part'], $data['item_in_name'], $data['item_quantity'], $data['item_pr'], $data['item_sum_pr'], $data['item_out_da'], $data['item_out_part'], $data['item_out_name'], $data['item_kinds'], $data['item_life'], $data['item_state'], $data['item_disposal'], $data['item_reason'], $data['item_memo']));
		
		$result =  $this->db->insert_string('jds_item', $data);

		return $result;
		
	}

 

직접 입력하여 실행해보니 데이터가 들어가더라구요;;

 

왜 $this->db->insert_string()로는 데이터가 들어가지 않는것일까요??

 

 

 다음글 웹뷰에서 CI 세션 질문드려요 (2)
 이전글 .htaccess에서 https 설정... (1)

댓글

뫄뫄잉뿌 / 2017/01/09 14:59:20 / 추천 0
ci 3 버전이 맞나요?
배강민 / 2017/01/09 15:20:42 / 추천 0

$this->db->insert_string('jds_item', $data); 으로 생성되는 쿼리를 찍어보거나 확인부터 해보고 그 쿼리를 실행해보시죠.

그리하면 자연스레 답이 나올 수 있을 듯 합니다.

찍어보거나 확인하는 방법은 직접 알아보시기 바라고요.

P.S.) 제 코멘트에 코멘트를 하셔도 언제 확인할지는 저도 알 수 없습니다.

정수리 / 2017/01/09 17:06:27 / 추천 0

@뫄뫄잉뿌

ci2버전이예요ㅜㅜ

뫄뫄잉뿌 / 2017/01/10 08:05:54 / 추천 0
ci2 버전은 insert_string 지원 안하는 걸로 알고있어요. ci2 버전 메뉴얼 참고하셔서 insert_betch로 바꿔보세요~
변종원(웅파) / 2017/01/10 10:23:39 / 추천 0

ci2 버전에 둘다 존재하고 하는 일은 똑같습니다만 파일 위치가 다르고 구현방식이 조금 다릅니다.

왜 이렇게 했는지는 이해가 안되네요. 

insert_string은 최종적으로 _insert를 사용하고 insert_batch는 _insert_batch를 사용하나 _insert나 _insert_batch나 구문은 똑같습니다. ㅎㅎ