十天学会php之第八天
[b][color=#ff6600] [/color][/b]l'b }kg a[font=宋体][size=10.5pt][color=#000000]学习目的:做一个分页显示[/color][/size][/font]"aS&ZqTSg
[color=#000000][font=宋体][size=10.5pt]关键就是用到了[/size][/font]SQL[font=宋体][size=10.5pt]语句中的[/size][/font]limit[font=宋体][size=10.5pt]来限定显示的记录从几到几。我们需要一个记录当前页的变量[/size][/font]$page[font=宋体][size=10.5pt],还需要总共的记录数[/size][/font][/color][color=#000000]$num7ki k2Y^,M#QOX
[font=宋体][size=10.5pt]对于[/size][/font]$page[font=宋体][size=10.5pt]如果没有我们就让它[/size][/font]=0[font=宋体][size=10.5pt],如果有[/size][/font]<0[font=宋体][size=10.5pt]就让它也[/size][/font]=0[font=宋体][size=10.5pt],如果超过了总的页数就让他[/size][/font]=[font=宋体][size=10.5pt]总的页数。[/size][/font][/color]:C#@L ?*RtP F
[color=#000000]$execc="select count(*) from tablename ";^*D P4K5gZ8iR[
$resultc=mysql_query($execc);
$rsc=mysql_fetch_array($resultc);
$num=$rsc[0];@2}6f,@i N1[
z1b-{_di
[/color][font=宋体][size=10.5pt][color=#000000]这样可以得到记录总数[/color][/size][/font]
[color=#000000]ceil($num/10))[/color][color=#000000][font=宋体][size=10.5pt]如果一页[/size][/font]10[font=宋体][size=10.5pt]记录的话,这个就是总的页数[/size][/font][/color]
[font=宋体][size=10.5pt][color=#000000]所以可以这么写[/color][/size][/font]`7}P4o j9Q
[color=#000000]if(empty($_GET['page']))#f(Y3\"c'\9iW1C Q
{
$page=0;
}uYG}nj\
else
{
$page=$_GET['page'];
if($page<0)$page=0;c)jvRBz,RP
if($page>=ceil($num/10))$page=ceil($num/10)-1;//[/color][color=#000000][font=宋体][size=10.5pt]因为[/size][/font]page[font=宋体][size=10.5pt]是从[/size][/font]0[font=宋体][size=10.5pt]开始的,所以要[/size][/font][/color][color=#000000]-1-a4~We)sU2R
}
[font=宋体][size=10.5pt]这样[/size][/font]$exec[font=宋体][size=10.5pt]可以这么写[/size][/font][/color][color=#000000] $exec="select * from tablename limit ".($page*10).",10";
//[font=宋体][size=10.5pt]一页是[/size][/font]10[font=宋体][size=10.5pt]记录的[/size][/font][/color]
[font=宋体][size=10.5pt][color=#000000]最后我们需要做的就是几个连接:[/color][/size][/font]
[color=#000000]<a href="xxx.php?page=0">FirstPage</a>
<a href="xxx.php?page=<?=($page-1)?>">PrevPage</a>