分页的bug



  1. 输入搜索后显示搜索列表,

  2. 点击下方分页,搜索内容就没了 

  3. 解决方案如下,仅供参考

            
                //获取数据并验证
    		$get_data = $this->request->param();
    		$validate = $this->validate($get_data, 'Content.getContentList');
    		if(true !== $validate){
    			$this->error($validate);
    		}
    		
    		//初始where和query条件
    		$where = 'status = 5';
    		$query = [];
    		
    		//完善where和query条件
    		if (isset($get_data['release_type'])){
    			if ($get_data['release_type'] != 2){
    				$where .= ' AND content.release_type ='.$get_data['release_type'];
    			}
    			$query['release_type'] = $get_data['release_type'];
    		}
    		if (isset($get_data['type'])){
    			if ($get_data['type'] != 0){
    				$where .= ' AND content.type ='.$get_data['type'];
    			}
    			$query['type'] = $get_data['type'];
    		}
    		if (isset($get_data['search_content']) && $get_data['search_content'] != ''){
    			$where .= ' AND (title like "%'.$get_data['search_content'].'%" OR teacher_name like "%'.$get_data['search_content'].'%")';
    			$query['search_content'] = $get_data['search_content'];
    		}
    		if (isset($get_data['model'])){
    			if ($get_data['model'] != 0){
    				$where .= ' AND content.model ='.$get_data['model'];
    			}
    			$query['model'] = $get_data['model'];
    		}
 
	    	//获取当前数据库实例
	    	$contentsQuery = Db::name('content');
	    	
	    	//分页获取数量
	    	$list = $contentsQuery
	    		->field('content.*, banner.id as is_banner')
	    		->alias('content')
	    		->join('__BANNER__ banner', 'banner.type_associated_id = content.id', 'left')
		    	->where($where)
		    	->order("create_time DESC")
		    	->paginate(10, false, [
		    			'query' => $query
		    	]);
		    	
	    	// 获取分页显示
	    	$page = $list->render();
	    	
	    	//映射数据到页面上
	    	$this->assign([
	    			'list' => $list,
	    			'page' => $page,
	    			'model' => isset($query['model'])?$query['model']:0,
	    			'type' => isset($query['type'])?$query['type']:0,
	    			'release_type' => isset($query['release_type'])?$query['release_type']:2
	    	]);
	    	return $this->fetch();


打赏

评论

暂时关闭,稍后恢复~
文档请看10遍以上!有问题可加QQ群!
发表话题

源素材推荐

提问必知

0.话题发布后没及时显示,请联系官方QQ群管理;
1.话题支持代码,qq截屏直接粘贴,和QQ群一样;
2.问题描述清,比如服务器版本,程序版本;
3.能上代码,就不用文字;
4.把问题发到话题后再发QQ群;
5.如果感觉回复者解答的不错,可以发红包!
6.多帮助别人也是对自己的锻炼!
7.付费讨论中只有提问者和付费用户才可以查看回复

积分规则

1.评论积分+1;每天最多10次奖励
2.发布话题积分+1;每天最多5次奖励
3.垃圾评论积分-500;
4.黄色,暴力,违反我国法律评论直接封号


ThinkCMF 8.0.0发布啦!祝大家节日快乐! 立即体验!