首页 > 开发 > PHP > 正文

php mysql 分页显示代码

2024-05-04 23:06:50
字体:
来源:转载
供稿:网友

一款由网页提供的php mysql 分页显示代码,样式比较多,php分页类的核心代码如下:

  1. <?php 
  2. /* 
  3.  
  4. php 分页类 
  5. 只要实现分页。不与数据库教程连接。 
  6.  
  7. 如果是伪静态 只需修改84行以下的A标签即可 如   "<a href='index_".$i.".html'>".$i."</a>"  (index_表示你的伪静态地址) 其他的A标签页是一样 
  8.  
  9. */ 
  10.  
  11. /* 
  12.  
  13.           鄙人工作时间写了个简单实用的  php 分页类   现和大家分享。。 
  14.      
  15.     QQ:348145486 
  16.      
  17.     email:  tzk_php@163.com   
  18.      
  19.     欢迎大家一起学习交流 
  20.  
  21. */ 
  22.  
  23.  
  24. class Page{ 
  25.  
  26.  public $page_size="20";                     //每页显示的数据数目 
  27.  public $page_num;                           //总的数据数目 
  28.  public $page_url="";                        //分页的当前URL 
  29.  public $pageval;                            //分页的当前页 
  30.  public $page_ys;                            //总的页数 
  31.  public $page_tf=false;                      //判断能否执行分页的值 
  32.  public $page
  33.  
  34.  /**********初始化分页类************/ 
  35.      
  36.  function __construct($page_num,$page_size=""){ 
  37.   $this->page_num=$page_num;                                                            //获取所有需要显示的数据数目 
  38.  
  39.   if($page_size!=""){ 
  40.    $this->page_size=$page_size;                                                      //获取每页显示数据数据 
  41.   } 
  42.  
  43.   $this->page_url=$_SERVER['SCRIPT_NAME'];                                              //获取当前的URL地址 
  44.  
  45.   if($this->page_num>$this->page_size){                                                 //判断是否能执行分页 
  46.    $this->page_ys=ceil($this->page_num/$this->page_size);                            //获取总的分页数 
  47.    $this->page_tf=true;                                                              //将分页权限复制以便下面再次判断 
  48.   } 
  49.  
  50.   if(!emptyempty($_GET['page'])){                                                            //只允许页码在分页数范围内 
  51.    if($_GET['page']>="1"){ 
  52.     if($_GET['page']<=$this->page_ys){ 
  53.      $this->pageval=$_GET['page']; 
  54.     }else
  55.      $this->pageval=$this->page_ys; 
  56.     } 
  57.    }else
  58.     $this->pageval="1"
  59.    } 
  60.   }else
  61.    $this->pageval="1"
  62.   } 
  63.  
  64.   $this->page=($this->pageval-1)*$this->page_size;                                       //查询数据库数据时的第一条数据 
  65.  
  66.  } 
  67.  
  68.  /************执行分页 返回分页按钮**********/ 
  69.  
  70.  
  71.  function page_fy($val=""){ 
  72.   if($this->page_tf==true){ 
  73.    if($val==""){ 
  74.     return $this->page_style_one(); 
  75.    }else if ($val=="1"){ 
  76.      return $this->page_style_two(); 
  77.    }elseif ($val=="2"){ 
  78.     return $this->page_style_three(); 
  79.    } 
  80.   } 
  81.  } 
  82.  
  83.  /**********分页按钮 样式一*********/ 
  84.  
  85.  function page_style_one(){ 
  86.   if($this->pageval=="1"){ 
  87.    $up="1"
  88.   }else
  89.    $up=$this->pageval-1; 
  90.   } 
  91.  
  92.   if($this->pageval>=$this->page_ys){ 
  93.    $down=$this->page_ys; 
  94.   }else
  95.    $down=$this->pageval+1; 
  96.   } 
  97.   $one="<a href='".$this->page_url."?page=1'>首页</a>"
  98.   $two="<a href='".$this->page_url."?page=".$up."'>上一页</a>"
  99.   $three="<a href='".$this->page_url."?page=".$down."'>下一页</a>"
  100.   $four="<a href='".$this->page_url."?page=".$this->page_ys."'>末页</a>"
  101.   return $page_echo = $one.$two.$three.$four
  102.  } 
  103.  
  104.  /***********分页按钮 样式二*************/ 
  105.  
  106.  function page_style_two(){                                                 //下面这个呢,逻辑很复杂,思维很林乱, 
  107.   $page_echo="";  
  108.   if($this->pageval=="1"){ 
  109.    $up="1"
  110.   }else
  111.    $up=$this->pageval-1; 
  112.   } 
  113.  
  114.   if($this->pageval>=$this->page_ys){ 
  115.    $down=$this->page_ys; 
  116.   }else
  117.    $down=$this->pageval+1; 
  118.   } 
  119.   $two="<a href='".$this->page_url."?page=".$up."'>上一页</a>"
  120.   $three="<a href='".$this->page_url."?page=".$down."'>下一页</a>"
  121.    
  122.   if($this->page_ys>"6"){ 
  123.  
  124.       if($this->pageval<=3){ 
  125.        $i=2; 
  126.        $i_to=5;        
  127.       }elseif ($this->pageval>=($this->page_ys-2)){ 
  128.        $i=$this->page_ys-4; 
  129.        $i_to=$this->page_ys-1; 
  130.       }else
  131.        $i=$this->pageval-2; 
  132.        $i_to=$this->pageval+2; 
  133.       } 
  134.        
  135.   if($this->pageval>4){ 
  136.    $page_one="..."
  137.   }else
  138.    $page_one=""
  139.    } 
  140.  
  141.   if($this->pageval<($this->page_ys-3)){ 
  142.    $page_two="..."
  143.   }else
  144.    $page_two=""
  145.    } 
  146.    
  147.   for ($i;$i<=$i_to;$i++){ 
  148.    $page_echo.="<a href='".$this->page_url."?page=".$i."'>".$i."</a>";                //如果是伪静态 只需修改A标签即可 如   "<a href='index_".$i.".html'>".$i."</a>"   其他的A标签页是一样 
  149.   }     
  150.   
  151.   }else
  152.    for ($i=2;$i<=($this->page_ys-1);$i++){ 
  153.        $page_echo.="<a href='".$this->page_url."?page=".$i."'>".$i."</a>"
  154.       }  
  155.        
  156.   } 
  157.    
  158.   return $two."<a href='".$this->page_url."?page=1'>1</a>".$page_one.$page_echo.$page_two."<a href='".$this->page_url."?page=".$this->page_ys."'>".$this->page_ys."</a>".$three
  159.  
  160.  } 
  161.   
  162.  /*****************分页按钮 样式三  样式3大家可以写了。 *******************/ 
  163.   
  164.  function page_style_three(){ 
  165.   return $this->page_style_two(); 
  166.  } 
  167. ?> 

PHP调用方法,代码如下:

  1. <style type="text/css"
  2.  
  3. a{ color:#fff; text-decoration:none; padding:2px 5px; background-color:#09C; border:#F63 double 1px; margin:0 2px; font-size:14px;} 
  4. a:hover{color:#f00; background-color:#CCC;} 
  5. body{color:#999;} 
  6. </style> 
  7. <?php 
  8.  
  9. include 'p.php';                    //载入分页类库 
  10.            
  11. $page=new Page('12345',"10");               //实例化类库     312  为显示的总条数     10   为每页显示的条数   
  12.  
  13.  
  14. echo "样式二<br/>"
  15. echo "<br/>"
  16. echo "<br/>"
  17. echo $page->page_fy('1');                //使用分页样式 
  18.  
  19. echo "<br/>";echo "<br/>";echo "<br/>";echo "<br/>"
  20.  
  21.  
  22. echo "样式一<br/>"
  23. echo "<br/>"
  24. echo "<br/>"
  25. echo $page->page_fy();                    //使用分页样式 
  26.  
  27.  
  28. ?> 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表