分页代码的一些注意事项
<?php require_once '../include.php'; $sql="select * from imooc_admin"; $totalRows=getResultNum($sql); //echo $totalRows; echo "<br>"; $pageSize=2; $totalPage=ceil($totalRows/$pageSize); //echo $totalPage; echo "<br>"; $page=$_REQUEST['page']?(int)$_REQUEST['page']:1; //echo $page; echo "<br>"; if($page<1||$page==null||!is_numeric($page)){ $page=1; } if($page>=$totalPage)$page=$totalPage; $offset=($page-1)*$pageSize; //如果$page=1时,则从数据库中的0开始获取,$offset的功能是哪一页开始从数据库中的哪一条数据开始获取 $sql="select * from imooc_admin limit {$offset},{$pageSize}"; $rows=fetchAll($sql); //print_r($rows); foreach($rows as $row) { echo "编号:".$row['id']."<br>"; echo "管理员的名称:".$row['username']."<hr>"; } $url=$_SERVER['PHP_SELF']; $index=($page==1)?"首页":"<a href='{$url}?page=1'>首页</a>";
$last=($page==$totalPage)?"尾页":"<a href='{$url}?page={$totalPage}'>尾页</a>"; $prev=($page==1)?"上一页":"<a href='{$url}?page=".($page-1)."'>上一页</a>"; //$page-1外面是括号不是大括号
$next=($page==$totalPage)?"下一页":"<a href='{$url}?page=".($page+1)."'>下一页</a>"; $str="总共{$totalPage}页/当前是第{$page}页"; //echo $url; for($i=1;$i<=$totalPage;$i++) { if($page==$i) { $p.="[{$i}]"; }else { $p.="<a href='{$url}?page={$i}'>[{$i}]</a>"; } } echo "<hr>"; echo $str.$index.$prev.$p.$next.$last;
$prev=($page==1)?"上一页":"<a href='{$url}?page=($page-1)'>上一页</a>"; 如果($page-1)前后没有双引号""和连接符.,则在地址为则会
出现http://localhost/muke/lib/page.func.php?page=(3-1) ,注意最后,不是出现2而是出现3-1,则无法解析,这是因为没有把?page=($page-1)
中的($page-1)当成一个数字来解析