下面是我的代码 
症状1:这个就是我点下一页,从第一页可以成功翻到第二页,可点第三页就点不动了。 
症状2:如果我用代码把当前页$pagenow改成3,然后点上一页,$pagenow的值为2,成功跳转到第二页,然后我再点下一页,直接跳转到第四页,我把当前页$pagenow改为各种值,发现每次点上一页下一页做 ++$pagenow或--$pagenow运算的时候都把$pagenow恢复到我设置的初始值,然后再做加减运算,NND,递加、递减运算啊,怎么会出现这个情况呢,帮我看看怎么导致的这种症状,我晕,大家仔细看下18、24行if里面的运算是不是有问题 
<?
$conn = @mysql_connect("localhost","root","") or die ("mysql_error()");
$selectdb = @mysql_select_db("test",$conn) or die ("mysql_error");
mysql_query("set names 'GBK'");
$pagesize=5; 
$url = $_SERVER["REQUEST_URI"];
$url = parse_url($url);
$url = $url['path'];
$dbnumsql = "SELECT * FROM `message`";
$dbnumquery = mysql_query($dbnumsql);
$dbnum = mysql_num_rows($dbnumquery);//获取数据总数
//如果数据总数大于每页显示数据的数量则进行分页运算
if ($dbnum>$pagesize){
$pagenow=1;
$pagenum = ceil($dbnum/$pagesize);
if ($_GET['page']=='pageup'){
--$pagenow;
echo $pagenow;
if ($pagenow<=0) $pagenow=1; }
if ($_GET['page']=='pagedown'){
++$pagenow;
echo $pagenow;
if ($pagenow>$pagenum) $pagenow=$pagenum;
}
$beginpage=($pagenow-1)*$pagesize;
}
//显示数据
$sql = "SELECT * FROM `message` limit $beginpage,$pagesize";
$query = mysql_query($sql);
while ($rows = mysql_fetch_array($query)){
echo $rows['user']."<br />".$rows['content'];}
//翻页链接
echo "<br />阅读进度:"."$pagenow".'/'.$pagenum;
echo "<a href=$url?page=pageup>上一页</a>"." <a href=$url?page=pagedown>下一页</a>";?>

解决方案 »

  1.   

    把页号传过去而不是传pageup pagedown
      

  2.   

    回1楼,什么是传递基准,能不能详细解释下?回2楼,我以为有?xxx=xxx的链接被连接,系统就会认为$_GET['xxx']获得了?xxx的动态,然后获得了动态if中的该条件就成立了能不能给我讲讲自定义链接?aaa=bbb.与GET的详细用法啊
      

  3.   

    回4楼,我就是想传递动作,传递pageup和pagedown,$_GET['page']接到动作pageup或pagedown后分别作了如下运算--$paganow和++$pagenow,这个时候$pagenow的值应该有变化吧,接下来做了下面的运算 $beginpage=($pagenow-1)*$pagesize;最后在SQL理执行这条语句进行显示SELECT * FROM `message` limit $beginpage,$pagesize你的是直接在URL上运算目标页码,我这个是通过URL传递动作,然后根据IF的判断进行目标页面运算,--$pagenow  ++$pagenow,这个有问题吗,晕
      

  4.   

    你每次访问该页面的时候$pagenow都等于1,下翻一页和下翻之后再下翻一页在程序上判断上没有任何区别,多次访问php时$pagenow是没有记忆功能的,你得想办法告诉你的程序每次的$pagenow想要的不同值。
      

  5.   

    给你个代码看看吧 
    $pagesize=1;
    $url=$_SERVER["REQUEST_URI"];
    $url=parse_url($url);
    $url=$url[path];$sql1="select * from message";
    $num=mysql_num_rows(mysql_query($sql1));if($_GET[page]){
    $pageval=$_GET[page];
    $page=($pageval-1)*$pagesize;
    $page.=',';
    } if($pageval<=1)$pageval=1;
     if($num==$pagesize){
      echo "共 $num 条".
    " 共一页";
     }elseif($_GET[page]>=ceil($num/$pagesize)){
      echo "共 $num 条".
    " <a href=$url?page=".($pageval-1).">上一页</a> 最后一页";
     }elseif($_GET[page]<=1) {
      echo "共 $num 条".
    " 第一页 <a href=$url?page=".($pageval+1).">下一页</a>";
     }
    else{
    echo "共 $num 条".
    " <a href=$url?page=".($pageval-1).">上一页</a> <a href=$url?page=".($pageval+1).">下一页</a>";
     }