Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Codeigniter sql语句错误_Php_Codeigniter - Fatal编程技术网

Php Codeigniter sql语句错误

Php Codeigniter sql语句错误,php,codeigniter,Php,Codeigniter,我试图验证csv文件中是否存在名称记录。我正在使用sql语句查看该名称是否存在,但出现了此错误 Error Number: 1054 Unknown column 'aa' in 'where clause' SELECT name FROM company WHERE name =aa public function findCompany($company){ $query = $this->db->query("SELECT name FROM company

我试图验证csv文件中是否存在名称记录。我正在使用sql语句查看该名称是否存在,但出现了此错误

Error Number: 1054

Unknown column 'aa' in 'where clause'

SELECT name FROM company WHERE name =aa


 public function findCompany($company){
    $query = $this->db->query("SELECT name FROM companyWHERE name =".$company);
    if($query->num_rows() > 0){
        return true;
    }else{
        return false;
    }
}
它可能是在字符串末尾附加变量的isue吗?

试试这个

function findCompany($company){
    $query = $this->db->query("SELECT name FROM company WHERE name = '$company' ");
    $result = $query->result_array();

    if($result > 0)
    {
        return true;
    }else{
        return false;
    }
}

错误是

SELECT name FROM companyWHERE 
                       ^^^

并检查包装
始终..

像这样尝试

 function findCompany($company){
    $this->db->select('name');
    $this->db->where('name',$company);
    $query = $this->db->get('company');

    if($query->num_rows > 0) {
        return true;
    }else{
        return false;
    }
}

除了缺少引号之外,您还可以进行SQL注入。与其担心引号,不如让Codeigniter/mysqli作为参数传递给您

$query = $this->db->query("SELECT name FROM company WHERE name = ?", array($company));

这似乎适用于我尝试过的情况。“”有什么不同之处?它指示文本值读取此
if($result>0)
如何进行比较..你能解释一下吗???@Hekmat用来确定是否存在数组。如果它不是空数组,它将传递true。如果为false,它是空数组。