php while语句出现无限循环 如何解决?

我在操作数据库的过程中发现while语句出现无限循环的现象,应该如何解决,让数据库中的数据顺利提取出来?我的代码:<?php$con=mysql_connect('loc... 我在操作数据库的过程中发现while语句出现无限循环的现象,应该如何解决,让数据库中的数据顺利提取出来?我的代码:<?php $con = mysql_connect('localhost','root','root');mysql_select_db('userweb');$sql = "select * from inf_userlogin,inf_usermain where inf_userlogin.username=inf_usermain.username";$result = mysql_query($sql);$sc = mysql_fetch_array($result);while($sc) {echo "用户名:".$sc['username']."  昵称:".$sc['usernc']."  真实姓名:".$sc['userzsname']."  财富值:".$sc['usermoney'];}?>有人可以看出来我哪里出错了吗?我在数据库中执行上面的SQL语句也没有错呀,输出4行8列数据。 展开
 我来答
windblast
2016-09-04 · 知道合伙人软件行家
windblast
知道合伙人软件行家
采纳数:5633 获赞数:13620
毕业于空军第一航空学院电子专业,1991年开始接触电脑,从事多年计算机编程,具有较丰富的经验。

向TA提问 私信TA
展开全部

尝试修改代码如下:

while($sc = mysql_fetch_array($result)) {
  echo "用户名:".$sc['username']."&nbsp;&nbsp;昵称:"
    .$sc['usernc']."&nbsp;&nbsp;真实姓名:".$sc['userzsname']
    ."&nbsp;&nbsp;财富值:".$sc['usermoney'];
}


提示说明: 


mysql_fetch_array() 函数的功能是:从数据库结果集中取得一行数据,并作为数组形式返回结果。


如果取得数据正确,返回根据从结果集取得的行生成的数组,如果没有更多行则返回 false。


你上面的代码中,取了一行记录,其后的 while 以其结果为循环条件,而这个循环条件在其后的循环体中,没有再次进行更新,所以会一直死循环。

追问
嗯,果然成功了。可是想请教一下为什么我上面的写法是错误的呢,朋友说我一直循环,没有跳出?
我会开发呢
2018-07-09
知道答主
回答量:20
采纳率:100%
帮助的人:6.2万
展开全部
请注意,使用while这个最基本的循环,要记的跳出。
否则会一直循环到执行时间结束
其实跳出只需要加上 break;就可以了
这样while (expr){
statement
break;
}
这样就循环一次表就会跳出
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式