在sql查询中插入php代码

时间:2013-02-27 22:48:39

标签: php mysql codeigniter phpmyadmin

function search_num_rows($param){
        $company_name=$param['company_name'];
        $loan_no=$param['loan_no'];

        $q = $this->db->query("select Count(0) as num_rows
                                from contact_new 
                                inner join  companies c on contact_new.company_id = c.id 
                                inner join history on contact_new.id = history.receiver_email 
                                inner join escalation_level on contact_new.escalation_level_id = escalation_level.id
                                inner join departments on contact_new.departmend_id = departments.id
                                WHERE  loan_no= '$loan_no' if($company_name){ AND company_name= '$company_name'} ")->result();
    return $q[0]->num_rows;
}

我可以像在where子句中那样插入php代码。有没有其他方法可以不使用活动记录。

1 个答案:

答案 0 :(得分:0)

这实际上非常简单:

function search_num_rows($param){
        $company_name = (isset($param['company_name']) && !empty($param['company_name']) ? " AND company_name = '$param[company_name]'" : '');
        $loan_no=$param['loan_no'];

        $q = $this->db->query("select Count(0) as num_rows
                                from contact_new 
                                inner join  companies c on contact_new.company_id = c.id 
                                inner join history on contact_new.id = history.receiver_email 
                                inner join escalation_level on contact_new.escalation_level_id = escalation_level.id
                                inner join departments on contact_new.departmend_id = departments.id
                                WHERE  loan_no= '$loan_no' $company_name")->result();
    return $q[0]->num_rows;
}