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条全是[]于.说。 展开
<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条全是[]于.说。 展开
2个回答
展开全部
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的都没有内容了。
应该改成
$pagenum = mysql_num_rows($result);
for($i=1;$i<=$pagenum;$i++)
你limit $begin,$pagesize了,query出的数据最多有$pagesize行,你却循环了$datanum行 ($datenum>=$pagesize),所有超过$pagesize的都没有内容了。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询