sun*_*nny 0 php mysql search codeigniter
我是Codeigniter的新手。我想创建一个搜索栏,用户在其中写一些关键字,它将检查数据库中表的所有字段,然后显示相对结果。
这是我的View代码:
<?php
echo '<h2>Search Books</h2>';
echo form_open('site/search');?>
<p>
<label for="title"> Title:</label>
<input type="text" placeholder="Search" name="search" size="50%">
</p>
<input type="submit" value="Submit"/>
<?php echo form_close(); ?>
<!--Here will be Search Result-->
<?php if (isset($searches)): foreach($searches as $search):?>
<h4><?php echo "   ";
echo $search->book_name;
echo "   "; ?></h4>
<?php endforeach; ?>
<?php else: ?>
No Book Found
<?php endif;?>
Run Code Online (Sandbox Code Playgroud)
并且名称站点的控制器代码是
function search(){
$search_book = array (
$search= $this->input->post('search')
);
$this->users_model->user_search($search_book);
$this->dashboard();
Run Code Online (Sandbox Code Playgroud)
在控制器中查询结果
if ($query = $this->users_model->user_search())
{
$search['searches'] = $query;
}
$data = $search;
$this->load->view('dashboard', $data);
Run Code Online (Sandbox Code Playgroud)
这是模型代码:
function user_search($search_book){
$query = $this->db->like('book_name', $search_book);
$this->db->or_like('author', $search_book);
$this->db->or_like('date', $search_book);
$this->db->get('books');
return $query->result();
Run Code Online (Sandbox Code Playgroud)
显示错误
遇到PHP错误
严重程度:警告
消息:Users_model :: user_search()缺少参数1,在第28行的C:\ xampp \ htdocs \ Pure_Logics \ application \ controllers \ site.php中调用并定义
文件名:models / users_model.php
行号:26
回溯:
文件:C:\ xampp \ htdocs \ Pure_Logics \ application \ models \ users_model.php行:26函数:_error_handler
文件:C:\ xampp \ htdocs \ Pure_Logics \ application \ controllers \ site.php行:28函数:user_search
文件:C:\ xampp \ htdocs \ Pure_Logics \ index.php行:315功能:require_once
方法调用中缺少参数
$this->users_model->user_search()
Run Code Online (Sandbox Code Playgroud)
改成
if ($query = $this->users_model->user_search($this->input->post('search')))
{
$search['searches'] = $query;
}
Run Code Online (Sandbox Code Playgroud)
模型:
function user_search($search_book){
$this->db->like('book_name', $search_book);
$this->db->or_like('author', $search_book);
$this->db->or_like('date', $search_book);
$query = $this->db->get('books');
return $query->result();
}
Run Code Online (Sandbox Code Playgroud)
控制器:
function search(){
$this->dashboard();
$data['searches'] =array();
if ($query = $this->users_model->user_search($this->input->post('search')))
{
$data['searches'] = $query;
}
$this->load->view('dashboard', $data);
}
Run Code Online (Sandbox Code Playgroud)
1)您调用不带参数的方法。但是您在model中使用参数定义的方法。
| 归档时间: |
|
| 查看次数: |
5992 次 |
| 最近记录: |