我最近在过滤系统中构建以过滤MySQL导致我的应用程序。
我当前的代码是:
php
$type = $this->input->post("type");
$name = $this->input->post("name");
$brunches = "SELECT b.*, host FROM brunches b
LEFT JOIN hosts ON hosts.id = b.hostid";
$conditions = array();
if(! empty($type)) {
$conditions[] = "type='$type'";
}
if(! empty($name)) {
$conditions[] = "name='$name'";
}
$sql = $brunches;
if (count($conditions) > 0) {
$sql .= " WHERE " . implode(' AND ', $conditions);
}
$data['brunches'] = $sql->result(); //line 155
$this->load->view('brunches-grid-view',$data);
}
由于某种原因,我经常收到错误 Fatal error: Call to a member function result() on line 155
(在第155行中添加了注释(
您需要生成查询结果
$sql= $this->db->query($sql);
$data['brunches'] = $sql->result();
有关如何生成查询结果的更多信息
我不知道你的桌子狭窄,但我认为几乎没有什么东西。只需检查一下并将您的代码与表比较。
- $早午餐SQL字符串。
- $条件[]数组键字符串
-
行155
$ type = $ this-> input-> post(" type"(;$ name = $ this-> input-> post(" name"(;
$ brigners =" select b。
$条件= array((;
if(!空($ type(({ $条件[] =" type ='"。$ type。"'";}
if(!空($ name(({ $条件[] =" name ='"。$ name。"'";}
$ sql = $早午餐;
if(count($条件(> 0({ $ sql。=" where"。爆破('and',$条件(;}
$ data ['brirnders'] = $ this-> db-> query($ sql( -> result((;//行155
$ this-> load-> view('Fringrid-rid-view',$ data(;