欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP和MYSQL实现分页导航思路详解

程序员文章站 2024-03-13 09:17:57
 预期效果 思路 通过sql语句 select * from table limit start end 来从mysql数据库 步骤 传入页码p;...

 预期效果

PHP和MYSQL实现分页导航思路详解

思路

通过sql语句 select * from table limit start end 来从mysql数据库

步骤

传入页码p;

根据页码获取数据php->mysql

显示数据+分页条

源码

注意点

  • table,input,button等控件的样式不会继承body,需要重新定义如下
input,label, select,option,textarea,button,fieldset,legend,table{
font-size:18px;
font-family:verdana;
}
  • 在进行查询数据库语言拼接的时候,limit关键字后面要留空格,且拼接的内容要用括弧包裹
$sql= "select * from pages limit ".(($page-1)*5).",5";
  • 在显示页的时候,作者的逻辑比较复杂,可以简化梳理
//1,主要是$total_pages > $show_page,特殊情况再另外考虑;
//2,再利用for循环显示全部;
//3,再考虑前面的省略号
if($total_pages>$show_page){
 //考虑正常情况下,...456...下一页 尾页
 if($page-$page_off> 1) 
$page_banner.="...";
$start=$page-$page_off;
 //非正常情况下,12...下一页 尾页
 if($start== 0)
$start= 1;
$end=$page+$page_off;
 //...78 总共8页
 if($end>$total_pages)
$end=$total_pages;
 for($i=$start;$i<=$end;$i++){
 //当前页显示高亮
 if($page==$i){
$page_banner.="<span class='current'>$i</span>";
 }else{
$page_banner.="<a href='".$_server['php_self']."?p=".$i."'>{$i}</a>";
 }
 }
 if($page+$page_off<$total_pages)
$page_banner.="...";
 //显示尾页与下一页
 if($page<$total_pages){
$page_banner.="<a href='".$_server['php_self']."?p=".($page+1)."'>下一页></a>";
$page_banner.="<a href='".$_server['php_self']."?p=".($total_pages)."'>尾页</a>";
 }else{
$page_banner.="<span class='disable'>下一页></span>";
$page_banner.="<span class='disable'>尾页</span>";
 }
}

最终效果

PHP和MYSQL实现分页导航思路详解 

以上所述是小编给大家介绍的php和mysql实现分页导航思路详解,希望对大家有所帮助