本帖最后由 tgb200 于 2012-06-30 21:50:29 编辑

解决方案 »

  1.   

    $key.="<a href=\"".$_SERVER['PHP_SELF']."?page=".($page+1)."\">下一页></a>";//下一页
    伙计,在下一页的链接里,你只传递了一个page参数,而用户传递过来的其它参数比如city都没有带上,当然会检索出所有信息
    解决方法我想你也有的
    1. 检索条件存session (不太推荐这样,增加复杂性)
    2. 续带在下一页的链接上继续GET传参
      

  2.   

    在 //判断当前页码 前加入
    unset($_GET['page']);
    $search = http_build_query($_GET);把 "?page=" 改为 "?$search&page="
      

  3.   

    <?php
       
      $city=$_GET[city];
      $quxian= $_GET[quxian];
      $lx= $_GET[lx];
      $gongqiu= $_GET[gongqiu];
      $spmj= $_GET[spmj];
      $cont= $_GET[cont];
     
    $sql = 'select * from new ';   if ( $spmj != '商铺面积' ){
    $sql .= "where mj $spmj" ;  
      }
    if ( $city != '' ){
     $sql .= ( preg_match('/where/' , $sql ) ? ' and ': ' where ' ) . ' city like "%'.$city.'%" ';
    }
    if ( $quxian != '' ){
     $sql .= ( preg_match('/where/' , $sql ) ? ' and ': ' where ' ) . ' quxian like "%'.$quxian.'%" ';
    }
    if ( $lx != '商铺类型' ){
     $sql .= ( preg_match('/where/' , $sql ) ? ' and ': ' where ' ) . ' lx like "%'.$lx.'%" ';
    }if ( $gongqiu!= '供求方式' ){
     $sql .= ( preg_match('/where/' , $sql ) ? ' and ': ' where ' ) . ' gongqiu like "%'.$gongqiu.'%" ';
    }if ( $cont!= '' ){
     $sql .= ( preg_match('/where/' , $sql ) ? ' and ': ' where ' ) . ' cont like "%'.$cont.'%" ';
    } $result = mysql_query($sql);
    echo $count = mysql_num_rows($result);
     $Page_size=3;
     $page_count = ceil($count/$Page_size);
    if(empty($_GET['page'])||$_GET['page']<0){
     $page=1;
     }else {
     $page=$_GET['page'];
    } $page_len= 3;
     $max_p=$page_count;
     $pages=$page_count;unset($_GET['page']);
    $search = http_build_query($_GET);
    //判断当前页码
     $offset=$Page_size*($page-1);
      echo $result =$sql."limit $offset,$Page_size ";
     $result=mysql_query($result);
     while ($row=mysql_fetch_array($result)) {
     if($result){
     echo "<div id='xs'>";
    // echo "<div id='im' >";
     //echo "<img src=$row[img]>";
     //echo "</div>";
     echo "<div id='title'>";
     echo "<a href=number.php?id=$row[id]>";
     echo $row[title]."</a>";
     echo '&nbsp;&nbsp;&nbsp;&nbsp;'."<span style='color:#5959FF'>".$row[ns]."</span><br>";
     echo substr($row[cont],0,200)."<br>"."<span style='color:#5959FF'>".$row[quxian]."</span>".$row[lx].'&nbsp;&nbsp;&nbsp;&nbsp;'.$row[time];
     echo "</div>";
     echo "<div id='gr'>";
     echo "<li>".$row[q].$row[dw]."</li>";
     echo "<li>".$row[mj].㎡."</li>";
     echo "</div>"."</div>";
      }
      }  
      ?>
     <?php
     $page_len = ($page_len%2)?$page_len:$pagelen+1;//页码个数
     $pageoffset = ($page_len-1)/2;//页码个数左右偏移量 $key='<div class="page">';
    // $key.="<span>$page/$pages</span>&nbsp;"; //第几页,共几页
     if($page!=1){
     //$key.="<a href=\"".$_SERVER['PHP_SELF']."?page=1\">第一页</a> "; //第一页
     $key.="<a href=\"".$_SERVER['PHP_SELF']."?$search&page=".($page-1)."\"><上一页</a>"; //上一页
    }else {
    // $key.="第一页 ";//第一页
    // $key.="上一页"; //上一页
    } if($pages>$page_len){
     //如果当前页小于等于左偏移
     if($page<=$pageoffset){
      $max_p = $page_len;
     }else{//如果当前页大于左偏移
     //如果当前页码右偏移超出最大分页数
     if($page+$pageoffset>=$pages+1){
     $init = $pages-$page_len+1;
     }else{
     //左右偏移都存在时的计算
     $init = $page-$pageoffset;
     $max_p = $page+$pageoffset;
     }
     }
      }
      $init=1;
      for($i=$init;$i<=$max_p;$i++){
     if($i==$page){
     $key.='<b>'.$i.'</b>';
     } else {
     $key.="&nbsp;<a href=\"".$_SERVER['PHP_SELF']."?$search&page=".$i."\">[".$i."]</a>&nbsp;";
     }
      }
     if($page!=$pages){
     $key.="<a href=\"".$_SERVER['PHP_SELF']."?$search&page=".($page+1)."\">下一页></a>";//下一页
     //$key.="<a href=\"".$_SERVER['PHP_SELF']."?$search&page={$pages}\">最后一页</a>"; //最后一页
     }else {
    // $key.="下一页 ";//下一页
    // $key.="最后一页"; //最后一页
     }
     $key.='</div>';
    ?><?php echo $key?>