PHP分页可以,但达到页数时会出现于.说

代码如下:<tableborder=1cellspacing=0cellspadding=0style="border-collapse:collapse"align=c... 代码如下:
<table border=1 cellspacing=0 cellspadding=0 style="border-collapse:collapse" align=center width=400 bordercolor=black height="382">
<tr><td height=100 bgcolor=#6C6C6C style="font-size:30px;line-height:30px" >
<font color=#ffffff face="黑体">简约不简单-我的留言本</font>
</td><tr>
<tr><td height=25>
 <a href=send.php>[我要写留言]</a>  <a href=login.php>[管理留言]</a>
</td></tr>
<tr><td height=200>
<?php
$id=mysql_connect("localhost","root","1234");
mysql_select_db("gbook",$id);
$query="select * from message ";
$result=mysql_query($query,$id);
if(mysql_num_rows($result)<1){
echo " 目前数据表中还没有任何留言!";
}else{ //ELSE开始
$totalnum=mysql_num_rows($result);
$pagesize=10;
$page=$_GET["page"];
if($page==""){
$page=1;
}
$begin=($page-1) * $pagesize;
$totalpage=ceil($totalnum/$pagesize);

echo "<table border=0 width=95%><tr><td>";
$datanum=mysql_num_rows($result);
echo "共有留言".$totalnum."条。";
echo "每页".$pagesize."条,共".$totalpage."页<br>";

for($j=1;$j<=$totalpage;$j++){
echo "<a href=index.php?page=".$j.">[".$j."] </a>";
}
echo "<br>";

$query="SELECT * FROM message order by addtime desc limit $begin,$pagesize";
$result=mysql_query($query,$id);
for($i=1;$i<=$datanum;$i++){
$info=mysql_fetch_array($result,MYSQL_ASSOC);
echo "->[".$info['author']."]于".$info['addtime']."说:<br>";
echo "  ".$info['content']."<br>";
if($info['reply']!=""){
echo "<b>管理员回复:</b>".$info['reply']."<br>";
}
echo "<hr>";
}
echo "</table>";
} //ELSE结束
mysql_close($id);
?>
</td></tr>
<tr><td height=60 bgcolor=#6c6c6c align=center>
<font color=#FFFFFF>版权所有:我的工作室<br>E-mail:rznqp@163.com
</td></tr>
</table>
</body>
</html>
你理解错了,我的意思是回复达到10条时,分完页,再输入第11条回复后,第12条-22条全是[]于.说。
展开
 我来答
everalan
推荐于2016-11-06 · TA获得超过1820个赞
知道大有可为答主
回答量:799
采纳率:0%
帮助的人:1415万
展开全部
for($i=1;$i<=$datanum;$i++)
应该改成
$pagenum = mysql_num_rows($result);
for($i=1;$i<=$pagenum;$i++)

你limit $begin,$pagesize了,query出的数据最多有$pagesize行,你却循环了$datanum行 ($datenum>=$pagesize),所有超过$pagesize的都没有内容了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
认识加拿大
2009-04-28 · TA获得超过377个赞
知道小有建树答主
回答量:361
采纳率:0%
帮助的人:168万
展开全部
for($i=1;$i<=$datanum;$i++){
你不能输入所有的啊
这样
for($i=1;$i<=$datanum;$i++)
改成
$book_num = ($datanum % $pagesize) == 0?10:$datanum % $pagesize;
for($i=1;$i<=$book_num;$i++)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式