循环直到用PHP返回true
问题描述:
我正在生成一个随机代码,我需要检查以确保该代码不在数据库中。我假设这需要某种类型的循环。我有我的查询所有设置,我需要它再次运行一个代码块,如果mysql_num_rows == 0
。如果存在登录ID数据库循环脚本测试 -循环直到用PHP返回true
do {
// Your logic
} while (condition);
答
$key = true;
while($key){
// Do stuff
if(mysql_num_rows($result) > 0) $key = false;
}
答
使用do...while
循环。如果存在,将登录后添加+1:
$key = true;
$a = 1;
$login_test_origin=$login_test;
while($key){
$query_test="SELECT count(*) as 'all' FROM user WHERE login='$login_test'";
$row_test=mysql_fetch_array(mysql_query($query_test));
$error=$row_test[all];
if($error > 0) {
$key = true;
$login_test=$login_test_origin.$a;
$a++;
}
else {
$key = false;
$login=$login_test;
}
}
echo"Used login ID: $login";
答
詹姆斯·脚本的简单升级:
答
这是一个完全不同的路线:
while(true){
if(/* Your logic which you expect to be true */){
break;
}
}
+0
@jisaak这是一个新问题?这显然是对原始问题的回答。 – Anders 2015-10-05 07:30:51
我需要的,如果有一个现有的行此再次运行,所以我会设置$键=如果'mysql_num_rows == 0'正确,最后设置为false? – DannyF247 2012-02-27 02:07:56
是的..对。只要将>>更改为== then – 2012-02-27 02:09:34