2017-01-27 1 views
0

codeigniter에서 mysql 쿼리의 변수 값을 전달할 수 있습니까?codeigniter에서 SQL 쿼리에 변수 값을 전달하는 방법은 무엇입니까?

내 세션 ID와 동일한 ID를 가진 레코드를 데이터베이스에서 선택하려고합니다.

내 코드는 다음과 같습니다

$this->db->select('*'); // <-- There is never any reason to write this line! 
$this->db->from('products');   
$this->db->where('id_admin = (SELECT id_admin FROM users WHERE id='.$this->session->userdata('user_id').')', NULL, TRUE); 

우리가 데이터베이스 쿼리에 변수 값을 연결할 수 있습니까?

이 코드는 오류도 제공하지 않지만 어떠한 결과도 제공하지 않습니다.

+0

조인을 사용하십시오. –

+0

다음과 같은 대답을 시도하십시오. –

답변

1

예제 참조에 가입 할 수 있습니다.

$article_id = $this->input->post('article_id'); 
$this->db->select('*'); 
$this->db->from('articles'); 
$this->db->join('news', 'news.id = articles.id'); 
$this->db->where('articles.id',$article_id); 
$query = $this->db->get(); 

위의 코드는 실행을 위해 다음과 같은 쿼리를 생성합니다. 전달 된 ID를 제공

SELECT * FROM articles JOIN news ON news.id = articles.id WHERE articles.id='10' 

는 아래의 코드를 수행해야 실행 된 쿼리의 결과를보고하기 위해 10

입니다.

print_r($query->result()); 
1

두 개의 테이블을 결합하여 사용하십시오.

<?php 
$this->db->select('products.*'); 
$this->db->from('products'); 
$this->db->join('users','products.id_admin=users.id_admin'); 
$this->db->where('users.id',$this->session->userdata('user_id')); 

$query = $this->db->get(); 

print_r($query->result_array());//your array of records 
2

사용이 활성화 기록하는이 활동 기록의 문서에 따라 CI에 쿼리를 가입 작성하는 방법

$this->db->select('p.*'); 
    $this->db->from('products as p'); 
    $this->db->join('users','p.id_admin=users.id'); 
    $this->db->where('users.id',$this->session->userdata('user_id'),false); 
    $query = $this->db->get(); 
관련 문제