这段代码怎么出现了无限循环了,而且只读取一条数据,请高手指正下问题所在,新手PHP,谢谢。

<?phpinclude("conn.php");$sql="select*fromzcn_order";echo"<tableborder=1><tr><td>Orde... <?php
include("conn.php");
$sql = "select * from zcn_order";
echo "<table border=1><tr><td>Order No.</td><td>Product Name</td><td>Serial</td><td>Number</td><td>Buyer</td><td>Email</td><td>Tel</td><td>Adress</td><td>Message</td></tr>";
while($order = mysql_fetch_array(mysql_query($sql)))
{
echo "<tr><td>".$order['orderno']."</td><td>".$order['product']."</td><td>".$order['serial']."</td><td>".$order['number']."</td><td>".$order['name']."</td><td>".$order['email']."</td><td>".$order['tel']."</td><td>".$order['adress']."</td><td>".$order['message']."</td></tr>";
}
echo "</table>";
?>
展开
 我来答
jiangxibaiyi
推荐于2016-03-14 · 跟随风去旅行-伤心的歌
jiangxibaiyi
采纳数:3973 获赞数:14412

向TA提问 私信TA
展开全部

nusicvvv

你在while循环中直接使用mysql_query,那他循环一次就查询一次sql,而数据库光标每次都从头开始,估计这个循环会执行无限次。。。。不死才怪

应该改成如下
$rlue = mysql_query($sql);
while($order = mysql_fetch_array($rlue)){
这样才保证了只执行一次mysql_query
nusicvvv
2012-08-26 · TA获得超过2575个赞
知道大有可为答主
回答量:3576
采纳率:33%
帮助的人:1994万
展开全部
while($order = mysql_fetch_array(mysql_query($sql)))
{
echo "<tr><td>".$order['orderno']."</td><td>".$order['product']."</td><td>".$order['serial']."</td><td>".$order['number']."</td><td>".$order['name']."</td><td>".$order['email']."</td><td>".$order['tel']."</td><td>".$order['adress']."</td><td>".$order['message']."</td></tr>";
}

这就是一个死循环啊, 每一次你都执行一个sql语句,取结果,也不移动光标,那不死才怪
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chinalande
2012-08-27 · 超过79用户采纳过TA的回答
知道小有建树答主
回答量:397
采纳率:0%
帮助的人:98.3万
展开全部
$result = mysql_query($sql);
while($order = mysql_fetch_array($result))

重复执行了查询
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式