【发布时间】:2010-05-17 18:08:37
【问题描述】:
我的代码-
function create_id()
{
//global $myusername;
$part1 = substr("Piyush", 0, -4);
$part2 = rand (99,99999);
$part3 = date("s");
return $part1.$part2.$part3;
}
echo create_id(); //this is printing fine.
function isUniqueUserID($userIDToCheck)
{
$sqlcheck = "Select * FROM ruser WHERE userId='$userIDToCheck';";
$resource = mysql_query($sqlcheck)or die(mysql_error());
$count = mysql_fetch_assoc($resource);
if( count($count) > 0)
{return false;}
return true;
}
$userIDVerifiedUnique = false;
while(! $userIDVerifiedUnique )
{
$userIDToCheck = create_id();
$userIDVerifiedUnique = isUniqueUserID($userIDToCheck );
}
循环只是不断地从while循环到函数IsUniqueUser(),反之亦然。????
【问题讨论】:
-
当 mysql_fetch_assoc() 没有找到要返回的行时,它返回 false。 count( false ) 将返回 1,因为 false 在技术上是 1 个元素。 isUniqueUserID 函数需要重构,如下面的答案所示。
-
请接受您的问题的答案,并为好的答案投票(如果不在整个网站上,至少对您自己的问题进行投票)。
标签: php loops while-loop