文章标题 ThinkPHP3.2.2-搜索分页

来源:互联网 发布:脚本王者荣耀软件 编辑:程序博客网 时间:2024/06/06 00:51

文章标题 ThinkPHP3.2.2-搜索分页

这里写图片描述

创建控制器InfoController.class.php

<?phpnamespace Home\Controller;use Think\Controller;class InfoController extends Controller {    public function index(){        $p=isset($_GET['p'])?$_GET['p']:1;        $username=isset($_GET['username'])?$_GET['username']:'';        $sex=isset($_GET['sex'])?$_GET['sex']:'';        $model=D('Info');        $arr=$model->getData($p,$username,$sex);        $prev=$arr['prev'];        $next=$arr['next'];        $total_page=$arr['total_page'];        $info=$arr['info'];        // print_r($info);die;        $this->assign('p',$p);        $this->assign('prev',$prev);        $this->assign('next',$next);        $this->assign('total_page',$total_page);        $this->assign('info',$info);        $this->display('info/index');      }    public function show(){        $p=isset($_GET['p'])?$_GET['p']:1;        $username=isset($_GET['username'])?$_GET['username']:'';        $sex=isset($_GET['sex'])?$_GET['sex']:'';        $model=D('Info');        $arr=$model->getData($p,$username,$sex);        $arr['p']=$p;        echo json_encode(array('data'=>$arr));    }}

创建模型InfoModel.class.php

<?php  namespace Home\Model;use Think\Model;class InfoModel extends Model {    public function getData($p,$username,$sex){        $conf=' 1=1';        if(!empty($username)){            $conf.=" and username like '%$username%'";        }        if(!empty($sex)){            $conf.=" and sex='$sex'";        }        $count=$this->where($conf)->count();        $size=3;        $total_page=ceil($count/$size);        $offset=($p-1)*$size;        $prev=($p-1)<1?1:$p-1;        $next=($p+1)>$total_page?$total_page:$p+1;        $info=$this->where($conf)->limit($offset,$size)->select();        $arr=array();        $arr['prev']=$prev;        $arr['next']=$next;        $arr['total_page']=$total_page;        $arr['info']=$info;        return $arr;    }}?>

创建视图/View/info/index.html

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>展示</title></head><body><center><input type="text" name="username" id="user"><input type="text" name="sex" id="sex"><button class="page">搜索</button>    <table border="1" id="box">        <tr>            <td>id</td>            <td>username</td>            <td>password</td>            <td>sex</td>        </tr>        <?php foreach($info as $k => $v){ ?>        <tr>            <td><?= $v['id'] ?></td>            <td><?= $v['username'] ?></td>            <td><?= $v['password'] ?></td>            <td><?= $v['sex'] ?></td>        </tr>        <?php } ?>        <tr>    <td>当前<?= $p ?>/<?= $total_page ?></td>    <td><a href="javascript:void(0)" class="page" data-p="1">首页</a></td>    <td><a href="javascript:void(0)" class="page" data-p="<?= $prev ?>">上一页</a></td>    <td><a href="javascript:void(0)" class="page" data-p="<?= $next ?>">下一页</a></td>    <td><a href="javascript:void(0)" class="page" data-p="<?= $total_page ?>">尾页</a></td>    </tr>    </table></center></body></html><script src="__PUBLIC__/js/jquery.1.12.min.js"></script><script>    $(function(){        //事件委托        $(document).on('click','.page',function(){            var obj=$(this);            var p=obj.attr('data-p');            var username=$('#user').val();            var sex=$('#sex').val();            $.ajax({                type:'get',                url:'__URL__/show',                data:{p:p,username:username,sex:sex},                dataType:'json',                success:function(res){                    var hehe=res.data;                    var str='<tr><td>id</td><td>username</td><td>password</td><td>sex</td></tr>';                    $.each(hehe.info,function(k,v){                        str+='<tr><td>'+v.id+'</td><td>'+v.username+'</td><td>'+v.password+'</td><td>'+v.sex+'</td></tr>';                    });                    str+='<tr><td>当前'+hehe.p+'/'+hehe.total_page+'</td><td><a href="javascript:void(0)" class="page" data-p="1">首页</a></td><td><a href="javascript:void(0)" class="page" data-p="'+hehe.prev+'">上一页</a></td><td><a href="javascript:void(0)" class="page" data-p="'+hehe.next+'">下一页</a></td><td><a href="javascript:void(0)" class="page" data-p="'+hehe.total_page+'">尾页</a></td></tr>';                    $('#box').html(str);                }            })        });    })</script>
原创粉丝点击