如何在帮助程序中使用if语句。我已经粘贴了帮助器中的功能,但是我找不到问题。
helper.php
function get_recipients($data)
{
$CI =& get_instance();
$CI->load->database();
$CI->db->where('company_id', $data["company_id"]);
if ($data["database_name"] != '' || $data["database_name"] != 'all') {
$CI->db->where('database_name', $data["database_name"]);
}
if ($data["province"] != '' || $data["province"] != 'all') {
$CI->db->where('province', $data["province"]);
}
if ($data["district"] != '' || $data["district"] != 'all') {
$CI->db->where('district', $data["district"]);
}
if ($data["ward"] != '' || $data["ward"] != '0' || $data["ward"] != 'all') {
$CI->db->where('ward', $data["ward"]);
}
if ($data["farm"] != '' || $data["farm"] != 'all') {
$CI->db->where('farming_type', $data["farm"]);
}
if ($data["commodity"] != '' || $data["commodity"] != 'all') {
$CI->db->where('commodity', $data["commodity"]);
}
$query = $CI->db->get('addressbook');
if($query->num_rows() >= 0){
return $query->num_rows();
}
else {
return false;
}
}
数据库,省,区,区,农场和商品的值为空,字符串(全部)或任何其他不同的字符串。当条件匹配时,将执行WHERE查询。
变量$ data附带正确的数据,但无论$ data的值是什么,都会执行WHERE查询
答案 0 :(得分:0)
尝试这样......
function get_recipients($response)
{
$data = (array)$response;//converts in to array
$CI =& get_instance();
$CI->load->database();
$CI->db->where('company_id', $data["company_id"]);
if ($data["database_name"] != '' || $data["database_name"] != 'all') {
$CI->db->where('database_name', $data["database_name"]);
}
//more code