在不使用活动记录的情况下将多个参数传递给代码点火器中的sql查询

时间:2013-07-19 09:16:11

标签: php sql codeigniter

我已经研究了这个,但没有得到正确的答案,我试图在代码点火器中传递多个参数到sql查询而不使用活动记录,它不适合我,看看我在下面做了什么< / p>

在我的模型中我有:

function get_values($id, $age)
{
$sql='SELECT * FROM tblRegister where id=? AND unit=?';
$query=$this->db->query($sql, array('$id','$age'));
return $query->result_array();

}
我在控制器中的

function get_values()
{
$result=$this->register_model->get_values(32, 23);

}

这对我不起作用,我认为将参数传递给查询时出错,如何格式化语法以使其正常工作?问候

4 个答案:

答案 0 :(得分:8)

尝试不带引号的变量:array($ id,$ age)

function get_values($id, $age)
{
   $sql='SELECT * FROM tblRegister where id=? AND unit=?';
   $query=$this->db->query($sql, array($id,$age));
   return $query->result_array();
}

答案 1 :(得分:3)

//do it as:
function get_values($id, $age)
{     
   $this->db->where("id",$id);
   $this->db->where("unit",$age);
   $query=$this->db->get("tblRegister");
   return $query->result_array();

}

答案 2 :(得分:0)

// try this in your model
function get_values($id, $age)
{    
    $array = array('id' => $id, 'unit' => $age);

    $this->db->select('*');
    $this->db->from('tblRegister');
    $this->db->where($array);
    $query=$this->db->get();

    return $query->result_array();
}

答案 3 :(得分:0)

尝试这个

function get_values($id, $age)
{
    $this->db->where('id',$id);

   $this->db->where('age',$age);

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

   return $query->result_array();
}