什么是导致我的PHP代码冻结?我知道这是while循环的原因,但我有$ max_threads--;最后它不应该这样做。为什么我的PHP脚本被冻结?
<html>
<head>
<?php
$db = mysql_connect("host","name","pass") or die("Can't connect to host");
mysql_select_db("dbname",$db) or die("Can't connect to DB");
$sql_result = mysql_query("SELECT MAX(Thread) FROM test_posts", $db);
$rs = mysql_fetch_row($sql_result);
$max_threads = $rs[0];
$board = $_GET['board'];
?>
</head>
<body>
<?php
While($max_threads >= 0)
{
$sql_result = mysql_query("SELECT MIN(ID) FROM test_posts WHERE Thread=".$max_threads."", $db);
$rs = mysql_fetch_row($sql_result);
$sql_result = mysql_query("SELECT post FROM test_posts WHERE ID=".$rs[0]."", $db);
$post = mysql_fetch_row($sql_result);
$sql_result = mysql_query("SELECT name FROM test_posts WHERE ID=".$rs[0]."", $db);
$name = mysql_fetch_row($sql_result);
$sql_result = mysql_query("SELECT trip FROM test_posts WHERE ID=".$rs[0]."", $db);
$trip = mysql_fetch_row($sql_result);
if(!empty($post))
echo'<div class="postbox"><h4>'.$name[0].'['.$trip[0].']</h4><hr />' . $post[0] . '<br /><hr />[<a href="http://prime.programming-designs.com/test_forum/viewthread.php?thread='.$max_threads.'">Reply</a>]</div>';
$max_threads--;
}
?>
</body>
</html>
只是调试或回声$ max_threads的前后循环内进行确认或排除它导致问题的原因。 – 2010-03-11 17:06:55
呃,两点建议你:1。使用'LIMIT'在SQL语句和2.不要做4'SELECT'那时你可以做一个。因为它的页面加载之前崩溃 – Felix 2010-03-11 17:08:44
不能呼应max_threads的。 – William 2010-03-11 17:21:38