php et分页时没有记录的处理 不指定

Else , 2008/01/05 05:39 , 代码片段,演示也有 , Comments(0) , Reads(4079) , Via Original
  //处理分页
  
    $sqlstr = "select * from cuku_notice";    //所有的记录
  

    $page=1;  //起始的记录
    $pagelist=20;    //每页显示的记录
    
    if (isset($_GET['page'])) {
        $page = $_GET['page'];
    }
    
    //算总的记录
    if (isset($_GET['total'])) {
      $total = $_GET['total'];
    } else {
      $all_rs = $db->query($sqlstr);
      $total= $db->num_rows($all_rs);    //总得记录
    }
    if ($total>0){
    $totalPages=ceil($total/$pagelist);    //总的页数
    //分页大于或小于当前的数页
    $page= (1>$page || $page>$totalPages) ? $totalPages : $page;
    
    $startpage = ($page-1) * $pagelist;    //分页的操作
    $sql=sprintf("%s LIMIT %d, %d",$sqlstr,$startpage,$pagelist);   //分页处理
    $query = $db->query($sql);
    $list = array();    //定义数组
    while($qs = $db->fetch_array($query))
    {
      $list[] = $qs;
    }
    
    $pagestr=$_SERVER['PHP_SELF']."?page=";
    $pageinfo= sprintf("共%d条记录  共%d页 每页显示%d条 <a href=%s>首页</a> <a href=%s>上一页</a> <a href=%s>下一页</a> <a href=%s>末页</a>",$total,$totalPages,$pagelist,$pagestr."1",$pagestr.max(--$page,1),$pagestr.min($totalPages,++$page + 1),$pagestr.$totalPages);
    }
    else
    {
    $pageinfo="没有记录";
    }
Tags: ,
Add a comment

Nickname

Site URI

Email

Enable HTML Enable UBB Enable Emots Hidden Remember [Login] [Register]