질문 Q #16391
$this->db->insert_string이 안먹히는 이유가 무엇일까요...
정수리 2017-01-09 14:53:29

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()로는 데이터가 들어가지 않는것일까요??

 

 

답변 5
#1 뫄뫄잉뿌 2017-01-09 15:29:20
ci 3 버전이 맞나요?
#2 배강민 2017-01-09 15:50:42

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

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

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

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

#3 정수리 2017-01-09 17:36:27

@뫄뫄잉뿌

ci2버전이예요ㅜㅜ

#4 뫄뫄잉뿌 2017-01-10 08:35:54
ci2 버전은 insert_string 지원 안하는 걸로 알고있어요. ci2 버전 메뉴얼 참고하셔서 insert_betch로 바꿔보세요~
#5 변종원(웅파) 2017-01-10 10:53:39

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

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

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