do while循环 限制条件不起作用

xuenping 2009-06-18 09:20:17
我的一段循环代码如下:
do{
$row = array();//初始化$row
$arr['range'] = rand(10000,99999);//得到一个随机数
//在数据库中查询这个随机数
$query = "select `range` from `".$table."` where `range`='".$arr['range']."'";
$result = $sSavedatainfo->mysql->query($query);
$row = $sSavedatainfo->mysql->fetch_array($result);
}
while(!isset($row['range']));//数据库中不存在这个随机数就跳出循环.


这段代码执行时总是会执行无数次,最后得到同一个随机数而结束循环

请朋友帮忙看看错误在什么地方.谢谢!
...全文
187 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
tfxg 2009-06-18
  • 打赏
  • 举报
回复
哎...while接受的必须是一个false的条件才跳出来。
如果表达式的值是true都不行


ACMAIN_CHM 2009-06-18
  • 打赏
  • 举报
回复

建议先学一些编程的知识。
程序猿之殇 2009-06-18
  • 打赏
  • 举报
回复
楼主终于开窍了.
呵呵,建议多看看手册的do while语句.
xuenping 2009-06-18
  • 打赏
  • 举报
回复
哎...while接受的必须是一个false的条件才跳出来。
如果表达式的值是true都不行

do{
$row = array();
$arr['range'] = rand(10000,99999);
$query = "select `range` from `".$table."` where `range`='".$arr['range']."'";

$result = $sSavedatainfo->mysql->query($query);
$row = $sSavedatainfo->mysql->fetch_array($result);
$while = isset($row['range']) ? true : false;
}
while($while);

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧