在cakephp中搜索结果的分页
发布时间:2020-12-13 17:42:59 所属栏目:PHP教程 来源:网络整理
导读:我已经实现了一个用户模型,我有一个简单的搜索表单 按性别,年龄,地点搜索.我正在使用分页器 对结果进行分页.问题是它只记得了 第一页上的搜索条件.当我点击第2页或下一页时 等等.它默认返回搜索所有用户. 这是我的控制器中的脏搜索代码,基本上它只是检查 提
我已经实现了一个用户模型,我有一个简单的搜索表单
按性别,年龄,地点搜索.我正在使用分页器 对结果进行分页.问题是它只记得了 第一页上的搜索条件.当我点击第2页或下一页时 等等.它默认返回搜索所有用户. 这是我的控制器中的脏搜索代码,基本上它只是检查 if (!empty($this->data)) { // by name if (!empty($this->data['User']['search_name'])) { $this->paginate = array('conditions' => array('visible'=>1,'OR'=>array( 'User.username LIKE' => '%'.$this->data['User']['search_name'].'%','User.firstname LIKE' => '%'.$this->data['User']['search_name'],'User.lastname LIKE' => '%'.$this->data['User']['search_name']) ),'limit'=>'10','order'=>'User.username'); } // by gender else if (!empty($this->data['User']['search_gender'])) { $this->paginate = array('conditions' => array( 'visible'=>1,'User.gender' => $this->data['User']['search_gender'] ),'order'=>'User.username'); } // by state else if (!empty($this->data['User']['search_state'])) { $this->paginate = array('conditions' => array( 'visible'=>1,'User.state' => $this->data['User']['search_state'] ),'order'=>'User.username'); } // Send the results for the above criteria to the view $results = $this->paginate('User'); $this->set('users',$results); } // Default retrieval of all users else { $this->paginate = array('conditions'=>array('visible'=>1),'order'=>'User.username'); $this->set('users',$this->paginate('User')); } 我正在试图弄清楚如何制作后续页面 解决方法
$this->数据在第二页上为空,因为它是通过发布您的搜索表单(未发布到第二页)来填充的.
将您的搜索表单帖子更改为GET($this-> Form-> create(‘ModelName’,array(‘type’=>’get’))并解析$this-> params而不是$this- >数据 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |