我在让我的简单 if 语句在 PHP while 循环中工作时遇到问题。这是我的代码:
$p=mysql_query("SELECT * FROM forum_posts WHERE forum_id='$cid' AND topic_id='$id' AND post_deleted='0' ORDER BY post_time ASC LIMIT $offset, $rowsperpage");
while($post=mysql_fetch_assoc($p)){
$userpost=$user->getUserData($post['userid']);
if($userpost['specialmembership'] == 1){
$pioneer = "True";
}
echo $userpost['username'];
echo $pioneer;
}
所以,在上面的例子中,我有两个不同的用户。它们被命名为user1
和user2
。
- 用户 1 具有特殊会员资格 = 0
- User2 有特殊会员资格 = 1
上面的代码将输出以下内容(本例中的 while 循环循环了4 次):
它将输出:
user1
user2
true
user1
true
user2
true
问题就在这里,脚本在第三个循环中的 user1 上打印出 true。User1 不应该设置为 true,只有 user2 应该设置,因为他有specialmembership = 1;
这里有什么问题?