CI 묻고 답하기

제목 DB 질문입니다.
글쓴이 루비콘 작성시각 2016/01/18 10:43:38
댓글 : 5 추천 : 0 스크랩 : 0 조회수 : 13423   RSS

 

CI 모델단에서 LIKE 구문을 사용하던 도웆에 오류가 발생했는데 

해결 방법을 모르겠네요 ㅠㅠㅠ 진짜 쉬운거 같은데 구글에 오류코드를 적어보니까 변수값으 DB에 대입을 못하는거 같은데 해결 법 좀 알려주시면 감사하겠습니다 ㅠㅠ

 모델단 소스 입니다.

	function view($item,$value){
//echo $value;
//echo $item;
//exit;
		$this->db->select("*");
		$this->db->from("dgc_edu_trade_1_0");
		$this->db->order_by("no", "desc");
		$this->db->where($item,$value);
		$this->db->like($item,$value,'both');

	$result = $this->db->get()->result_array();
		//etcOption 처리
	foreach($result as $key=>$list){
		$result[$key]['etcOption'] = unserialize($list['etc_option']);
	}
		return $result;
	}

 다음글 foreach 관련 질문입니다 (5)
 이전글 3,02 설치 후 이런 에러가 발생하는데 ? (2)

댓글

kaido / 2016/01/18 12:12:56 / 추천 0

그냥 item 과 value 값이 없다고 밖에 표현이 안됩니다.

 

한대승(불의회상) / 2016/01/18 12:13:14 / 추천 0

$item 으로 넘어오는 값을 확인해 보세요.

루비콘 / 2016/01/18 13:05:46 / 추천 0

모델단에 echo $value;echo $item;

코드 추가했는데 정상적으로 출력이 됩니다만 ㅠㅠㅠ

kaido / 2016/01/19 09:02:04 / 추천 0

뭔가 이상 한데요.

지금 쿼리문에서 인식 하는 거랑 코딩이랑 다르게 나오고 있습니다.

 

//controller

function test_m(){
  $item = "name";
  $value = "Love";
  $this->load->database('default');  
  $this->load->model('test_model');
  $this->test_model->test_m($item,$value);
  
 }



//model

function test_m($item,$value){
  $this->db->select("*");
  $this->db->from("tb_product");
  $this->db->where($item,$value);
  $this->db->like($item,$value,'both');
  $this->db->order_by("id","desc");
  $result = $this->db->get()->result_array();
  print_r($result);
  
 }

 

 

 

결과

SELECT *FROM `tb_product`WHERE `name` = 'Love'AND  `name` LIKE '%Love%' ESCAPE '!'ORDER BY `id` DESC 

 

 

 

item 하고 value 한번 var_dump(); 떠보세요.

 

루비콘 / 2016/01/20 13:26:55 / 추천 0

해결하였습니다 ㅎㅎ 

where 절을 빼버리니까 정장작동 하네요