用PHP实现的最简单的分页代码


<?$conn=mysql_pconnect("host","usr","psw");
$db=mysql_select_db("intranet",$conn);
$querystr="select * from db_name ";
$result=mysql_query($querystr,$conn);//到这里是例行公事
//得到总记录数
$total=mysql_num_rows($result);//得到总记录数
//设置每页显示的条目数
$pagesize=5;
//计算总的页面数
if (($total%$pagesize)!=0)
$totalpage=intval($total/$pagesize)+1;
else
$totalpage=intval($total/$pagesize);
//开始显示的页面
if ($page=="")
$current=1;
else{    
   switch(
$page){
    case 
"首页"
    
$current=1;
    break;
    case 
"上一页":
    
$current=$curpage-1;
    break;
    case 
"下一页":
    
$current=$curpage+1;
    break;
    case 
"尾页":
    
$current=$totalpage;
    break;}
    }
    
?>
    <b>第<? echo $current;?>页,共<? echo $totalpage;?>页.......共有<? echo $total;?>篇文章
<form name="form1" method="post" action="<? echo $PHP_SELF ?>">
  <input type="hidden" name="curpage" value="<?echo $current;?>">
  <input type="submit" name="page" value="首页">
 <? if($current>1):?>
  <input type="submit" name="page" value="上一页">
  <?endif;
  if(
$current<>$totalpage):?>
  <input type="submit" name="page" value="下一页">
  <?endif;?>
  <input type="submit" name="page" value="尾页">
</form>
<table width="100%" border="0" cellspacing="2" cellpadding="0">
  <tr bgcolor="#E1FFE9"> 
    <td>msgid</td>
    <td>mstitle</td>
    <td>content</td>
    <td>authname</td>
    <td>time</td>
    <td>属性</td>
  </tr>
  <?if($total<>0){
    
mysql_data_seek($result,(($current-1)*$pagesize));
  }
  
$i=1;
  while(
$arr=mysql_fetch_array($result)){
?>
  <tr bgcolor="#F0FEE7"> 
    <td><? echo $arr[msgid];?></td>
    <td><? echo $arr[mstitle];?></td>
    <td><? echo $arr[mscontent];?></td>
    <td><? echo $arr[authname];?></td>
    <td><? echo $arr[posttime];?></td>
    <td><? echo $arr[prop];?></td>
  </tr><?
    $i
++;
if (
$i>$pagesize)
    break;
else
    continue;
}
?>
</table>