我正在尝试从数据库中搜索产品,然后显示在视图中。但它向我展示了一个错误,那就是这个...
A PHP Error was encountered
Severity: Notice
Message: Array to string conversion
Filename: database/DB_active_rec.php
Line Number: 679
这是控制器的代码
function search_prd()
{
$query = $this->input->post();
$this->load->model('prd/addprd');
$prd_search = $this->addprd->prd_search($query);
$this->load->view('prd_search', ['prd_search' => $prd_search]);
}
而这段代码是模型
function prd_search($query)
{
$q = $this->db->from('purchase')
->like('item_name', $query)
->get();
return $q->num_rows();
}
CI的input->post()
是一个包含POST数据的数组。CI 活动记录的第二个参数like()
需要一个字符串。 如果要传递单个字段值,则需要访问该索引:
<input name="search_value">
$query = $this->input->post('search_value'); //notate the field being used here
然后,您可以查询如下位置:
$this->db->like('column', $query); //query is now a string
或者,如果您打算传递整个数组,则可以使用where_in()
$this->db->where_in('column', $query); //if you assign $query to $this->input->post();