CI 묻고 답하기

제목 $this->db->last_query() 오류
카테고리 CIBOARD
글쓴이 layman 작성시각 2017/05/30 16:38:23
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 14772   RSS

평소와 같이 $this->db->last_query(); 함수로 실행쿼리를 눈으로 보면서

작업 중이었는데,

 

$this->db->set('MAKER_ID', $this->oci->get_id()); 
$this->db->set('MAKER', $post['keyword']);
$this->db->set('MAKERCODE', generateRanStr(4));
$this->db->set('LASTUSER', 'AUTO');
$this->db->set('LASTCOUNT', 0);
$this->db->set('LASTDATE', 'SYSDATE', FALSE);
$this->db->insert('COD_MAKER');
echo $this->db->last_query();exit;

 

해당 실행쿼리를 보려고 찍었는데..

무슨 검색하지도 않은 이상한 쿼리가 나오네요.

SESSION_ID 어쩌고라고 적혀있는데.. 이 쿼리가 문자열로 반환되네요.

SELECT * FROM EPS_CI_SESSIONS WHERE session_id = '5d80297f883a83907a411248321d8298'

 

이게 실행될 만한 곳이 없는데.. 1년동안 한번도 이런적이 없었는데.. ㅜㅜ

혹시, 쿼리 직전이나 직 후에 자동으로 실행되도록 하는 설정이 CI 어딘가에 따로 있나요?

 

 다음글 database.php에 pconnect=true의 정... (1)
 이전글 $this->db->close(); 이거 꼭... (3)

댓글

꾸룩꾸룩 / 2017/05/30 16:54:42 / 추천 0
음 쿼리가 나가기 전에 써야하는거 아니었나요? 
kaido / 2017/05/30 17:05:36 / 추천 0

쿼리 사용 직후 사용되는것이 맞습니다. 

마지막으로 사용한 쿼리를 확인 하는 것이라서요.

 

해당 쿼리는 CI가 세션을 확인 할때 사용되는 쿼리입니다.

 

후크 같은게 설정되어서 중간에 끼어들어오는게 아닌지 확인할 필요가 있습니다.

인서트 된 id 가 필요하시다면 insert_id() 이라는 물건이 있습니다.

layman / 2017/05/31 11:02:17 / 추천 0

감사합니다. 해결했습니다.