- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
如果之前有人问过这个问题,我真的很抱歉,我在这里已经尽我所能,但没有一个类似的问题能回答我的问题......
我正在尝试创建各种抽奖...我有一个成员及其条目的数据库表,我正在尝试将他们的名字重复插入到另一个数据库表中,重复次数与他们的个人条目数量一样多.
现在我已经查找了 for() 循环,据我所知,我的代码的这种尝试应该有效:
$Amount = mysql_query("SELECT * FROM reapingbowl WHERE userid = $reapablef->id") or die(mysql_error());
$reapablef = mysql_query("SELECT * FROM members");
$reapablef = mysql_fetch_object($reapablef);
$amount = $reapablef->entries
for($e = 1; $e < $amount; $e++)
{
mysql_query("INSERT INTO reapingbowl (userid) VALUES ($reapablef->id)") or
die(mysql_error());
}
其中 $amount
先前定义为从数据库中提取条目金额,而 $reapablef
先前定义为从数据库表中提取特定用户。整个过程包含在一次对一个用户起作用的 while 循环中。
我的问题只是这个 for() 循环永远不会结束。据我所知,它应该在条目数量取代 $e 值之后结束,但它一直在继续,我不明白为什么......我对另一个 for() 循环有类似的问题,我不明白为什么。
我也尝试了一个 while 循环,编码是这样的:
$Amount = mysql_query("SELECT * FROM reapingbowl WHERE userid = $reapablef->id") or die(mysql_error());
while ($amount = mysql_num_rows($Amount), $amount < $ENTRIES)
{
mysql_query("INSERT INTO reapingbowl (userid) VALUES ('$reapablef->id')") or
die(mysql_error());
}
这做同样的事情,只是不停地输入名字......如果我是愚蠢的或其他什么,我真的很抱歉但是请有人能帮我弄清楚为什么吗?
希望这就是所有必要的代码。我真正想知道的是为什么 for() 循环永远不会结束...(我在其他地方尝试过,限制为 10,但它仍然会永远持续下去)
最佳答案
我敢打赌,您的 $amount
变量包含一个对象。
作为PHP manual states ,当使用比较运算符时,对象总是被认为大于数字。
在另一个现实中,PHP 可能会在您进行愚蠢的比较时向您发出警告,但出于某种原因,在我们这个宇宙中它不会。
很可能有一个简单的解释和/或一个很好的理由,但现在我想不出任何。
关于php - 永不结束 for() 和 while() 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20927072/
我是一名优秀的程序员,十分优秀!