///////////////////////////////////////////////////////////////////////////////////
 // 链接函数,用于分页中的翻页                                                    //
 //                                                                               //
 ///////////////////////////////////////////////////////////////////////////////////
  function linked($ye,$count,$limit,$flag){
  if ($count<=$limit){
      $link = "共1页";
      return $link;
  }
  elseif(($ye=="1") or ($ye=="")){
          $ye = 1;
            $yes = ceil($count/$limit);
            $next_ye =$ye+1;
            $link="第".$ye."页/共".$yes."页&nbsp;&nbsp;&nbsp;&nbsp;<a href=\"$php_self?$flag=$next_ye\" class=blackl>下一页</a>
           &nbsp;&nbsp;<a href=\"$php_self?$flag=$yes\" class=\"blackl\">末页</a>";
           }else{
              $yes = ceil($count/$limit);
              $next_ye = $ye+1;
              $prev_ye = $ye-1;
              if ($ye==$yes){
              $link = "第".$ye."页/共".$yes."页&nbsp;&nbsp;&nbsp;&nbsp;<a href=\"$php_self?$flag=1\" class=black>首页</a>&nbsp;&nbsp;<a href=\"$php_self?$flag=$prev_ye\" class=black>上一页</a>&nbsp;&nbsp;";
              }
              else{
               $link = "第".$ye."页/共".$yes."页&nbsp;&nbsp;&nbsp;&nbsp;<a href=\"$php_self?$flag=1\" class=black>首页</a>&nbsp;&nbsp;<a href=\"$php_self?$flag=$prev_ye\" class=black>上一页</a>&nbsp;&nbsp;<a href=\"$php_self?$flag=$next_ye\" class=blackl>下一页</a>
          &nbsp;&nbsp;<a href=\"$php_self?$flag=$yes\" class=\"blackl\">末页</a>";
            }
           }
           return $link;
         }
上面函数是我自己写的,已经过无数次尝试最后改进的,参数作用为:
$ye:页的变量名,随便取
$count:所有的记录数
$limit:一页显示的条数
$flag:这个参数用于如一页中有几个地方要翻页时的标识符,把它取成与$ye相同的名字即可;

解决方案 »

  1.   

    哦,没看到,还要带跳转页啊,其实这个简单,一个文本输入框,获得有效的页数号码之后,直接跳转时带上这个变量传递就可以了啊,,,,如<a href=**.php?page=$num>adsfsdf</a>
      

  2.   

    <?      
     $query="content like '%".$key."%' or subject like '%".$key."%'";
     $pagesize=10;
     $rowcount=0;
     $sqlnum="select count(*) as rowsnum from sjzy_content where sjzy_id=".$sjzy_id." and(".$query.")"; 
         $getrowsnum=$db->execute($sqlnum) or die("抱歉,与数据库失去联系!");
         $talking_rows=$getrowsnum->fields['rowsnum'];
         $pageno=ceil($talking_rows/$pagesize)-1;
         $lastnum=$pageno*$pagesize;  echo "<table width=500>";
    $sql="select * from sjzy_content  where sjzy_id=".$sjzy_id." and (".$query.") order by sjzy_channel_id asc,sjzy_content_id desc";
        $db_query = $db->execute($sql);

    IF ($J=="") {$J=0;}

        while(!$db_query->EOF and $db_query->getNumOfRows()<>0){
    IF ($rowcount>=$J and $rowcount<$J+$pagesize)
      {
        $sjy_content_id=$db_query->fields['sjzy_content_id'];
    $sjzy_channel_id=$db_query->fields['sjzy_channel_id'];
    $sql2="select * from sjzy_channel where sjzy_channel_id=".$sjzy_channel_id;
    $db_query2=$db->execute($sql2);
    $sjzy_channel_name=$db_query2->fields['sjzy_channel_name'];
    $subject=$db_query->fields['subject'];
    $dormancy=$db_query->fields['dormancy'];
    $time=$db_query->fields['writetime'];
    $s_time=mydate($time,y).'-'.mydate($time,m).'-'.mydate($time,d);
                 
    if ($dormancy==1)
      {$zt="已发布";}
      else
      {$zt="未发布";}
     echo "<tr><td nowrap>".$sjzy_channel_name."</td><td><a href=sjzyeditshow.php?news_id=".$sjy_content_id.">".$subject."</a></td><td nowrap>".$s_time."</td> <td nowrap>".$zt."</td></tr>";
        }
    $db_query->nextRow();
        $rowcount = $rowcount + 1;
    }
    $db_query->close;
      echo "</table>"; 
      //取得总行数
     ?>
     <hr color="87F1E4">
             <table width="100%" border="0" align="center">
     <tr valign="bottom">
      <td width="300">
        <?
    $F = $J+$pagesize;
    $B = $J-$pagesize;
    If ($B<0){  ?>
    <label diabaled>首页</lable><label diabaled>上一页</lable>
     <?}else{?>
     <a href="sjzyfind.php?key=<?echo $key;?>">首页</a>

        <a href="sjzyfind.php?J=<?echo $J-$pagesize;?>&key=<?echo $key;?>">上一页</a>
     <?} 
      If ($F>=$rowcount){
       ?>
       <label diabaled>下一页</lable><label diabaled>尾页</lable>
      <?}else{?>
        <a href="sjzyfind.php?J=<?echo $J+$pagesize;?>&key=<?echo $key;?>">下一页</a>
        <a href="sjzyfind.php?J=<?echo $lastnum;?>&key=<?echo $key;?>">尾页</a>

    <?}?>
      
     
      总计<font color=#CC0000><?echo $talking_rows;?></font>条记录</td>
    <form name=jump action="sjzyfind.php?key=<?echo $key;?>" method="get">
    <input type="Hidden" name="key" value="<?echo $key;?>">
    <td>共<?echo $pageno+1;?>页,转到
       <select name="J">
        <? for ($i=1;$i<=$pageno+1;$i++) {?>
    <option value="<?echo $i*($pagesize)-$pagesize;?>"><?echo $i;?></option>
    <?}?>
    <option value="0" selected>select</option>
    </select>页
    <input type="Submit" name="submit" value="跳转">
                            </td>
                          </tr>
                   </table>