PHP和MYSQL实现分页导航思路详解
时间:2021-01-14 11:13:22|栏目:PHP代码|点击: 次
预期效果
思路
通过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+js实现裁剪任意形状图片
栏 目:PHP代码
下一篇:Fatal error: Call to undefined function curl_init()解决方法
本文标题:PHP和MYSQL实现分页导航思路详解
本文地址:http://www.codeinn.net/misctech/44924.html