• 技术文章 >后端开发 >php教程

    求个具体的php+mysql分页-不用网上搜的

    2016-06-13 11:20:35原创362
    求个具体的php+mysql分页-----不要网上搜的
    一、从a页点击在b页进行分页显示
    二、分页显示的代码
    三、有首页 上页 1 2 3 4 5 下页 末页的功能
    四、翻页后能正常显示内容就是点击上页下页能正常显示数据库的数据(a页传来的参数不丢失),


    ------解决方案--------------------
    class page{
    private $_page_num;//总页数
    private $_page_size=10;//每页条数
    private $_page_url;//url链接
    private $_limit;//limit1
    private $_page_total;//总分页数
    private $_page;//分页所传分页值
    private $_list_size=10;//这为第二种分页方法显示条数
    private $_page_sort=3;//分页两边距离
    public function __construct($_total,$_pagesize,$_list_size){
    $this->_page_size=$_pagesize;
    $this->_page_total=$_total;
    $this->_list_size = $_list_size;
    $this->_page_num = round($this->_page_total/$this->_page_size);
    $this->_page=$this->getnum();
    $this->_limit="limit".$this->_page*$this->_page_size.",".$this->_page_total=$_total;
    $this->_page_url=$this->seturl();
    }
    /**
    * 获取当前页数
    * Enter description here ...
    */
    private function getnum(){
    if(isset($_GET['page'])){
    if(is_numeric($_GET['page'])){
    if($_GET['page']>0){
    if(ceil($_GET['page'])>=1 && ceil($_GET['page'])<=$this->_page_num){
    return ceil($_GET['page']);
    }elseif(ceil($_GET['page'])>$this->_page_num){
    return $this->_page_num;
    }
    }else{
    return 1;
    }
    }else{
    return 1;
    }
    }else{
    return 1;
    }
    }
    /**
    * 转换链接
    * Enter description here ...
    */
    private function seturl(){
    $_url=$_SERVER['REQUEST_URI'];//获取请求地址
    $_par=parse_url($_url);//解析url
    if(isset($_par['query'])){//判断是否存在aa=bb这种格式
    $_url=parse_str($_par['query'],$_query);//重构url
    unset($_query['page']);
    $_url=$_par['path'].'?'.http_build_query($_query);
    }else{
    $_url=$_url.'?';
    }
    return $_url;
    }

    public function limit(){
    return $this->_limit;
    }

    public function pagenum(){
    return $this->_page_num;
    }

    /*
    public function page(){
    return $this->_page;
    }
    public function pageurl(){
    return $this->_page_url;
    }
    */

    private function first(){
    return "首页";
    }
    private function end(){
    return "尾页";
    }
    private function prev(){
    if($this->_page>1){
    return "上一页";
    }else{
    return '上一页';
    }
    }
    public function next(){
    if($this->_page<$this->_page_num){
    return "下一页";
    }else{
    return '下一页';
    }
    }
    private function pagelist_1(){
    $_page='';
    for($i=1;$i<=$this->_page_num;$i++){
    $_page.="".$i."";
    }
    return $_page;
    }
    private function pagelist_2(){
    $_page='';
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:nbsp page this gt return
    Web大前端开发直播班

    相关文章推荐

    • 关于POST抓取不到数据的有关问题 • Follow your heart (113)-总算决定,边等人家做,边自学php了 • PHP无法正确载入Mysql库, • PHP读写资料代码 • 哪位高手有SESSION用法和代码贴出来参考一上~多谢

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网