这个是一个留言的代码。 里面有一个分页效果。
但是有时候在点下一页,或是下一页的时候会没反应。然后点了过后。你等一会儿然后再点刷新这个时候才会显示出上一页或是下一页的内容。而且不能点太快。如果你点慢一点运行才是正常。如果是点得太快了。也会没反应。大家帮忙看一下代码里面哪里不对。这个是我书上的一个例子。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/transitional.dtd">
<?php
$conn=mysql_pconnect("localhost","root");
mysql_select_db("t");
$page=isset($_GET['page'])?$_GET['page']:1;
$each_page=5;
$res=mysql_query("select count(*) from guestbook");
$total=mysql_result($res,0);
$total_page=ceil($total/$each_page);
$page=($page<0)?1:$page;
$page=($page>$total_page)?$total_page:$page;
$offset=($page-1)*$each_page;
?><html>
<head>
<meta http-equiv="Content-Type" Content="text/html;charset=utf-8">
<title>签写留言</title>
<link href="css/style.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<input type="button" value="签写留言" onclick="location.href='write.php'"/>
<table width="90%" border="0" cellpadding="4" cellspacing="1">
<tr>
<td colspan="2" class="HeaderRow">
留言列表(<?php echo sprintf("%d记录 %d/%d页",$total,$page,$total_page)?>)
</td>
</tr>
<?php
if($total)
{
$sql="select * from guestbook limit $offset,$each_page";
$res=mysql_query($sql);
$i=0;
while($row=mysql_fetch_object($res))
{
$tmp=($i++)%2;
?>
<tr>
<td width="25%" valign="top" class="InputRow<?php echo $tmp?>">
<b><?php echo htmlspecialchars($row->name)?> </b><br/>
性别:<?php echo ($row->sex)?"帅哥":"美眉"?><br/>
<a href="mailto:<?php echo htmlspecialchars($row->email)?>">电子邮件</a>
<?php if($row->url){?><a href="<?php echo htmlspecialchars($row->url)?>" target="_blank">个人主页</a>
<?php }?>
</td>
<td width="75%" valign="top" class="InputRow<?php echo $tmp?>">
<div align="right">
<a href="edit.php?id=<?php echo $row->id?>">编辑</a>
|
<a href="del.php?id=<?php echo $row->id?>">删除</a>
</div>
<hr size="1"/>
<!--正文内容-->
<?php echo $row->comment?>
</td>
</tr>
<?php }?>
<?php }else{?>
<tr>
<td colspan="2" class="SubTitleRow" align="center">
<b>留言内容不存在</b>
</td>
</tr>
<?php }?>
<tr>
<td colspan="2" align="center">
<?php 
if($page>1){
?>
<input type="button" value="前一页" onclick="location.href='?page=<?php echo $page-1?>'"/>
<?php
}else{
?>
<input type="button" disabled value="前一页">
<?php }?>
&nbsp;
<?php if($page<$total_page){ ?>
<input type="button" value="下一页" onclick="location.href='?page=<?php echo $page+1?>'"/>
<?php }else{?>
<input type="button" disabled value="下一页"/>
<?php } ?>
</td>
</tr>
</table>
</body>
</html>

解决方案 »

  1.   

    你用firefox,安装firebug
    之后打开你的网站,按F12打开friebug工具栏,点击网络,之后刷新一下你的网站,此时会列出每个元件的加载时间
    你就可以找出慢的原因了.然后再修改不迟.
    不要盲目乱改.
      

  2.   

    xdebug+WinCacheGrind看看吧!http://blog.csdn.net/sws9999/archive/2009/02/12/3880386.aspx
      

  3.   

    一楼对啊。拿firebug检查一下。很有帮助的。