php翻页代码出错,请教高手。(只剩最后的27分了)

php中文网
发布: 2016-06-23 14:10:16
原创
985人浏览过

运行结果是只显示数据库内容的第一页,单击“下一页”仍然停留在第一页上。

<?php	$pages=ceil($count/$list_num);    echo "<table width=780 border=0 cellspacing=0 cellpadding=0 align=center class='text'>          <tbody>           <tr> <td width='159'><font color='#ff0000'>目前共有".$count."条记录</font> </td>               <td width='205'>共".$pages."页</td>";	  if($offset){		 $preoffset=$offset-$list_num;	print "<td width='132'><a href=\"$PHP_SELF?offset=$preoffset\">上一页</a></td>";}	  else {	echo  "<td width='132'>上一页</td>";	}	 $newoffset=$offset+$list_num;	  if(($pages!=0)&&(($newoffset/$list_num)!=$pages))	{	 print("<td width='158'><a  href=\"$PHP_SELF?offset=$newoffset\">下一页</a></td>");	}	  else{ echo "<td width='158'>下一页</td>";}	 $pageno=($offset/$list_num)+1;	echo "<td width='112' class=text>第<input class=text type='text' size='4'value=".$pageno." readonly>页</td>          <td width='4'> </td> </tr> </table>";   ?>
登录后复制

代码小浣熊
代码小浣熊

代码小浣熊是基于商汤大语言模型的软件智能研发助手,覆盖软件需求分析、架构设计、代码编写、软件测试等环节

代码小浣熊 51
查看详情 代码小浣熊

回复讨论(解决方案)

你用chrome审查元素看一下“下一页”这个地方有没有连接,
再有就是你用上楼主那天告诉你的那个
abstract($_REQUEST);  这个要加到上面

<?phpif ($_GET[offset]) {  $offset = $_GET[offset];}$count =100 ;$list_num =5 ;  $pages=ceil($count/$list_num);    echo "<table width=780 border=0 cellspacing=0 cellpadding=0 align=center class='text'>          <tbody>           <tr> <td width='159'><font color='#ff0000'>目前共有".$count."条记录</font> </td>               <td width='205'>共".$pages."页</td>";    if($offset){     $preoffset=$offset-$list_num;  print "<td width='132'><a href=\"$PHP_SELF?offset=$preoffset\">上一页</a></td>";}    else {  echo  "<td width='132'>上一页</td>";  }   $newoffset=$offset+1;//$list_num;    if(($pages!=0)&&(($newoffset/$list_num)!=$pages))  {   print("<td width='158'><a  href=\"$PHP_SELF?offset=$newoffset\">下一页</a></td>");  }    else{ echo "<td width='158'>下一页</td>";}   $pageno=$offset;  echo "<td width='112' class=text>第<input class=text type='text' size='4'value=".$pageno." readonly>页</td>          <td width='4'> </td> </tr> </table>";   ?><?php?>
登录后复制

不知道是不是误解了LZ的意思

<?phpif ($_GET[offset]) {  $offset = $_GET[offset];}$count =100 ;$list_num =5 ;  $pages=ceil($count/$list_num);    echo "<table width=780 border=0 cellspacing=0 cellpadding=0 align=center class='text'>          <tbody>           <tr> <td width='159'><font color='#ff0000'>目前共有".$count."条记录</font> </td>               <td width='205'>共".$pages."页</td>";    if($offset){     $preoffset=$offset-$list_num;  print "<td width='132'><a href=\"$PHP_SELF?offset=$preoffset\">上一页</a></td>";}    else {  echo  "<td width='132'>上一页</td>";  }   $newoffset=$offset+1;//$list_num;    if(($pages!=0)&&(($newoffset/$list_num)!=$pages))  {   print("<td width='158'><a  href=\"$PHP_SELF?offset=$newoffset\">下一页</a></td>");  }    else{ echo "<td width='158'>下一页</td>";}   $pageno=$offset;  echo "<td width='112' class=text>第<input class=text type='text' size='4'value=".$pageno." readonly>页</td>          <td width='4'> </td> </tr> </table>";   ?><?php?>
登录后复制

不知道是不是误解了LZ的意思 我用了你的代码,虽然下边翻页后下边显示的是第二页,但表单里的内容还是第一页的啊?

<?phpif ($_GET[offset]) {  $offset = $_GET[offset];}$count =100 ;$list_num =5 ;  $pages=ceil($count/$list_num);    echo "<table width=780 border=0 cellspacing=0 cellpadding=0 align=center class='text'>          <tbody>           <tr> <td width='159'><font color='#ff0000'>目前共有".$count."条记录</font> </td>               <td width='205'>共".$pages."页</td>";    if($offset){     $preoffset=$offset-$list_num;  print "<td width='132'><a href=\"$PHP_SELF?offset=$preoffset\">上一页</a></td>";}    else {  echo  "<td width='132'>上一页</td>";  }   $newoffset=$offset+1;//$list_num;    if(($pages!=0)&&(($newoffset/$list_num)!=$pages))  {   print("<td width='158'><a  href=\"$PHP_SELF?offset=$newoffset\">下一页</a></td>");  }    else{ echo "<td width='158'>下一页</td>";}   $pageno=$offset;  echo "<td width='112' class=text>第<input class=text type='text' size='4'value=".$pageno." readonly>页</td>          <td width='4'> </td> </tr> </table>";   ?><?php?>
登录后复制

不知道是不是误解了LZ的意思 页数在变化,页面内容不变。

至于数据库的SQL语句我就不太清楚是怎么写的了。
一般都是 select * from `table` order by id desc limit 1 $offset*$count/$list_num ,($offset+1)*$count/$list_num
下面这段代码已经用我自己的数据库测试过,可以运行

<?phpif ($_GET[offset]) {  $offset = $_GET[offset];}$count =100 ;$list_num =5 ;  $pages=ceil($count/$list_num);    echo "<table width=780 border=0 cellspacing=0 cellpadding=0 align=center class='text'>          <tbody>           <tr> <td width='159'><font color='#ff0000'>目前共有".$count."条记录</font> </td>               <td width='205'>共".$pages."页</td>";    if($offset){     $preoffset=$offset-1;  print "<td width='132'><a href=\"$PHP_SELF?offset=$preoffset\">上一页</a></td>";}    else {  echo  "<td width='132'>上一页</td>";  }   $newoffset=$offset+1;//$list_num;    if(($pages!=0)&&(($newoffset/$list_num)!=$pages))  {   print("<td width='158'><a  href=\"$PHP_SELF?offset=$newoffset\">下一页</a></td>");  }    else{ echo "<td width='158'>下一页</td>";}   $pageno=$offset;  echo "<td width='112' class=text>第<input class=text type='text' size='4'value=".$pageno." readonly>页</td>          <td width='4'> </td> </tr> </table>";   ?><?phpinclude 'mysqlconnect.php';$limit1 = $offset*$count/$list_num ;$limit2 = ($offset+1)*$count/$list_num;$sql = "select * from mealtable order by mealuid desc limit $limit1,$limit2";$query = mysql_query($sql);var_dump($query);while ($a = mysql_fetch_row($query)) {  print_r($a);}?>
登录后复制

至于数据库的SQL语句我就不太清楚是怎么写的了。
一般都是 select * from `table` order by id desc limit 1 $offset*$count/$list_num ,($offset+1)*$count/$list_num
下面这段代码已经用我自己的数据库测试过,可以运行

<?phpif ($_GET[offset]) {  $offset = $_GET[offset];}$count =100 ;$list_num =5 ;  $pages=ceil($count/$list_num);    echo "<table width=780 border=0 cellspacing=0 cellpadding=0 align=center class='text'>          <tbody>           <tr> <td width='159'><font color='#ff0000'>目前共有".$count."条记录</font> </td>               <td width='205'>共".$pages."页</td>";    if($offset){     $preoffset=$offset-1;  print "<td width='132'><a href=\"$PHP_SELF?offset=$preoffset\">上一页</a></td>";}    else {  echo  "<td width='132'>上一页</td>";  }   $newoffset=$offset+1;//$list_num;    if(($pages!=0)&&(($newoffset/$list_num)!=$pages))  {   print("<td width='158'><a  href=\"$PHP_SELF?offset=$newoffset\">下一页</a></td>");  }    else{ echo "<td width='158'>下一页</td>";}   $pageno=$offset;  echo "<td width='112' class=text>第<input class=text type='text' size='4'value=".$pageno." readonly>页</td>          <td width='4'> </td> </tr> </table>";   ?><?phpinclude 'mysqlconnect.php';$limit1 = $offset*$count/$list_num ;$limit2 = ($offset+1)*$count/$list_num;$sql = "select * from mealtable order by mealuid desc limit $limit1,$limit2";$query = mysql_query($sql);var_dump($query);while ($a = mysql_fetch_row($query)) {  print_r($a);}?>
登录后复制
太感谢了!

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号