注:因为ajax不熟悉
光在test.php
里面加<form method=get><input type=text name=page><input type=submit value=跳转></form>
这样不行啊

解决方案 »

  1.   

    我这儿有个现成的函数。下面还有函数的调用实例:
    <?
    session_start();
    include("linkdb.inc.php");
    //$num为总记录数,$perpage为每页显示数,
    function multi($num, $perpage, $curpage, $mpurl, $maxpages = 0) {
    $multipage = '';
    $mpurl .= strpos($mpurl, '?') ? '&' : '?';
    if($num > $perpage) {
    $page = 5;
    $offset = 2;$realpages = ceil($num / $perpage);
    $pages = $maxpages && $maxpages < $realpages ? $maxpages : $realpages;$from = $curpage - $offset;
    $to = $curpage + $page - $offset - 1;
    if($page > $pages) {
    $from = 1;
    $to = $pages;
    } else {
    if($from < 1) {
    $to = $curpage + 1 - $from;
    $from = 1;
    if(($to - $from) < $page && ($to - $from) < $pages) {
    $to = $page;
    }
    } elseif($to > $pages) {
    $from = $curpage - $pages + $to;
    $to = $pages;
    if(($to - $from) < $page && ($to - $from) < $pages) {
    $from = $pages - $page + 1;
    }
    }
    }$multipage = ($curpage - $offset > 1 && $pages > $page ? '<td>&nbsp;<a href="'.$mpurl.'page=1"><IMG                   height=10 src="img/previous.jpg" width=15 border=0>&nbsp;</td>' : '').
    ($curpage > 1 ? '<td>&nbsp;<a href="'.$mpurl.'page='.($curpage - 1).'"><IMG height=10 src="img/previous.jpg" width=15 border=0></a>&nbsp;</td>' : '');
    for($i = $from; $i <= $to; $i++) {
    $multipage .= $i == $curpage ? '<td >&nbsp;<SPAN class=boldRed>'.$i.'</SPAN>&nbsp;</td>' :
    '<td>&nbsp;<a href="'.$mpurl.'page='.$i.'">'.$i.'</a>&nbsp;</td>';
    }$multipage .= ($curpage < $pages ? '<td>&nbsp;<a href="'.$mpurl.'page='.($curpage + 1).'"><IMG                height=10 src=img/next.jpg width=15 border=0></a>&nbsp;</td>' : '').
    ($curpage + $page - $offset <= $pages ? '<td>&nbsp;<a href="'.$mpurl.'page='.$pages.'"><IMG height=10 src=img/next.jpg width=15 border=0></a>&nbsp;</td>' : '');/*$multipage = $multipage ? '<table cellspacing="0" cellpadding="0" border="0"><tr><td height="3"></td></tr><tr><td>'.
    '<table cellspacing="'.INNERBORDERWIDTH.'" cellpadding="2" ><tr bgcolor="'.fffff0.'" ><td >&nbsp;'.$num.'&nbsp;</td><td >&nbsp;'.$curpage.'/'.$realpages.'&nbsp;</td>'.$multipage.'</tr></table>'.
    '</td></tr><tr><td height="3"></td></tr></table>' : '';*/$multipage = $multipage ? '<TABLE cellSpacing=0 cellPadding=5 align=center bgColor=#ffffff border=0><TBODY><TR><TD width=180>共'.$realpages.'页/'.$num.'项结果</TD><TD></TD><TDalign=middle>'.$multipage.'</TD><TD></TD></TR></TBODY></TABLE>' : '';
    }
    return $multipage;
    }?>
                      
                <table width="710" border="0" align="center" cellpadding="2" cellspacing="0">
                  <?
      /*
      位址 Address
     餐厅 RestaurantName
     菜系 CategoryCode
     城区 CityZoneCode 
     消费 AverageConsumption
     折扣 Discount
    餐厅 RestaurantName
           座位 Capacity
                  街道 StreetCode
    */
    /*
     if($Address==""){
    $name="";
           }else{
    $name="addr like '%$Address%'";

                   }   //餐厅
    if($RestaurantName==''){
    $Restaurant="";
     }else{
     $Restaurant="name like '%$RestaurantName%'";
    }
    */
    //echo $Restaurant;
    //菜系
    $codenum=count($CategoryCode);
     for($aa=0;$aa<$codenum;$aa++){
                   $Category.=$CategoryCode[$aa].",";
                      }
                    $Category=substr($Category,0,-1);           
    if($codenum==0){
    $goryCode="dishmenu like '%$Category%'";
    }elseif($codenum==1){
                 $goryCode="dishmenu like '%$Category%'";
    }elseif($codenum>1){
                 $goryCode="(dishmenu rlike '".str_replace(",","' or dishmenu rlike '",$Category)."')";
    }
    //echo $goryCode;
    //城区
                 $num1=count($StreetCode);
                    for($i=0;$i<$num1;$i++){
                   $Street.=$StreetCode[$i].",";
                            }
                    $Street=substr($Street,0,-1);
    if($CityZoneCode==''&&$Street==''){
    $CityZoneCode="cityzone like '%$CityZoneCode%'";
    }elseif($CityZoneCode<>''&&$Street==''){
    $CityZoneCode="cityzone like '%$CityZoneCode%'";
    }elseif($CityZoneCode<>''&&$Street<>''){
    $CityZoneCode="(streetcode = '".str_replace(",","' or streetcode = '",$Street)."')";
    }
    //echo $CityZoneCode;

                 if($AverageConsumption==''&&$AverageConsumption_to==''){
    $Average="consume<2000";
    }elseif($AverageConsumption<>''&&$AverageConsumption_to==''){
    $ave=explode(',',$AverageConsumption);
    $Average="consume>=$ave[0] and consume<=$ave[1]";
    }elseif($AverageConsumption<>''&&$AverageConsumption_to<>''){
                    $Average="consume>=$AverageConsumption and consume<=$AverageConsumption_to";
    }
    //echo  $Average;
    /**/

               //折扣
       if(($Discount=='')&&($Discount_to=='')){
       $Discount='discount<=100';    }elseif($Discount<>''&&$Discount_to<>''){
       $Discount="discount>$Discount and discount<$Discount_to";    }elseif($Discount<>''&&$Discount_to==''){
                       $Discount="discount<=$Discount";
       }
       //座位
      if($Capacity==''){
      $Capacity='renshu<2000';
      }else{
               $Capacity="renshu>=$Capacity and renshu<=$Capacity_to";
      }
              
      //查询
       $str10="select id from restaurant where addr like '%$Address%' and name like '%$RestaurantName%' and ".$goryCode." and ".$CityZoneCode." and ".$Average." and ".$Discount." and ".$Capacity."";

       $res10=mysql_query($str10);
           $row10=mysql_num_rows($res10);
     $num=$row10;
    $perpage=20;
    $tot=$perpage*($page-1);
    if($tot<0){
    $tot=0;
    }else{
    $tot=$tot;
    }
    $curpage=$page;
    $mpurl='search.php?id=$id';
      $str="select * from restaurant where addr like '%$Address%' and name like '%$RestaurantName%' and ".$goryCode." and ".$CityZoneCode." and ".$Average." and ".$Discount." and ".$Capacity." limit $tot,$perpage";
    $res = mysql_query($str);$bgcolor="ffffff";
    while($row = mysql_fetch_array($res)){ echo " <tr bgcolor='#".$bgcolor."'><td width=239 height=28> <a  href=dining_room.php?id=$row[id] target=_blank>$row[name]</a></td><td width=75 align=center>$row[discount]%</td><td width=121 align=center>$row[consume]元</td><td width=259>$row[addr] </td></tr>";


    $bgcolor=="ffffff"?$bgcolor="f6f6f6":$bgcolor="ffffff";}
      ?>
                </table>
                      <br>
      <?        echo multi($num, $perpage, $curpage, $mpurl, $maxpages = 0);
    ?>
                   
                     
                    </td>
                    <td width="1" background="img/bg_11.jpg"></td>
                  </tr>
                  <tr> 
                    <td background="img/bg_14.jpg"></td>
                    <td height="5" background="img/bg_16.jpg"></td>
                    <td background="img/bg_1818.jpg"></td>
                  </tr>
                </table>
                <br>
              </td>
            </tr>
          </table>
          
      

  2.   

    代码太多,不看了。
    你就弄个input text,里面输入的值$_GET下来,赋给当前页不就行了。
    建议用一些人家写好的分页类,如pear的pager,自己写的乱七八糟容易存在bug。
      

  3.   

    <form method=get><input type=text name=page value=<?=$page?>><input type=submit value=跳转></form>
    只要加上这一句不就可以了,
    下面已经有最大页和最小页1的判定了,加上这一句就应该可以了!
      

  4.   

    这个是我自己写的分页函数,呵呵。 function page($rowall=0,$pagerow=20,$pagename='page')
    {
    $pagestr = '&nbsp';
    global $_SERVER;
    global $_GET;
    if(isset($_GET[$pagename]))
    {
    $pagenow = $_GET[$pagename];
    }
    else
    {
    $pagenow = 1;
    }
    $url=$_SERVER["REQUEST_URI"]; //取得当前的URL
    $urlparse = parse_url($url); //取得URL的分析数组
    if(isset($urlparse['query']))
    {
    //清除原来URL上的分页数据
    $urlquery = ereg_replace('(^|&)'.$pagename.'='.$pagenow,'',$urlparse['query']);
    $url=str_replace($urlparse['query'],$urlquery,$url); //连接新的分页数据
    if($urlquery)
    {
    $url.='&'.$pagename.'=';
    }
    else
    {
    $url.=$pagename.'=';
    }
    }
    else  //原来没有任何数据的URL连接新的分页数据
    {
    $url.='?'.$pagename.'=';
    } //页码显示处理
    $begin = $pagenow-4;
    $over = $pagenow+5; $pageall = ceil($rowall/$pagerow); if($pageall<=10)
    {
    $begin = 1;
    $over = $pageall;
    }
    else
    {
    if($pagenow <= 5)
    {
    $begin = 1;
    $over = 10;
    } if($pagenow >= ($pageall-5))
    {
    $begin = $pageall-9;
    $over = $pageall;
    } if(($pagenow > 5) && ($pagenow < ($pageall-5)))
    {
    $begin = $pagenow-4;
    $over = $pagenow+5;
    }
    } if($begin<1)
    {
    $begin = 1;
    } if($over>$pageall)
    {
    $over = $pageall;
    } $pagestr .= '<a href='.$url.'1>&lt&lt</a>&nbsp'; for($i=$begin;$i<=$over;$i++)
    {
    if($i == $pagenow)
    {
    $pagestr .=  $i.' ';
    }
    else
    {
    $pagestr .=  '<a href='.$url.$i.'>'.$i.'</a>&nbsp';
    } } $pagestr .= '<a href='.$url.$pageall.'>&gt&gt</a>&nbsp'; $first = ($pagenow-1)*$pagerow;
    $last = $pagerow;
    $pagevalue['pagelink'] = $pagestr;
    $pagevalue['first'] = $first;
    $pagevalue['last'] = $last; return $pagevalue;
    }
      

  5.   

    把你的程序改一改:function dopage(obj,url=''){
    if(url==''){    
    url = form1.page.value;
    }
    if(url=='') {
    alert('请填入需要跳转的页码');
    return false;
    }
    document.getElementById(obj).innerHTML="正在读取数据...";
    send_request(url);
    reobj=obj;
    }<form name="form1" method='get' onClick="return dopage();"><input type=text name=page><input type=submit value=跳转></form>
      

  6.   

    dopage()
    在"输入页码跳转",调用时指定第一个参数就可以了,
    比如: dopage('result');