【发布时间】:2012-12-24 13:26:39
【问题描述】:
我的 PHP 的另一个 while 循环中有这个 while 循环:
$selecty = mysql_query("SELECT * FROM followers WHERE userid='".$_SESSION['id']."'");
$rowsy = mysql_num_rows($selecty);
echo '<td>'. $table["username"]. '</td>';
echo '<td>';
while ($tables = mysql_fetch_assoc($selecty)) {
if($tables['followerid']!=$table['id']) {
echo '<a href="#" data-userid="'.$table['id'].'" class="follow">'.'</a>';
} else {
echo '<a href="#" data-userid="'.$table['id'].'" class="following">'.'</a>';
}
}
echo '</td>';
echo "<tr>";
这更像是一个逻辑问题,以及嵌套的 while 循环是否是正确的方法。我想说的是,如果“用户关注者表”中的“followerid”与用户表中的“id”(来自上一个循环)不同 - 回显关注按钮,否则回显以下按钮.
这是工作文件,而我的关注者表中有数据,但如果我没有显示(因为没有行) - 我如何在我的 PHP 中实现它?那么,如果“关注者表”中没有任何行,则回显关注按钮?
【问题讨论】:
-
在
if($tables['followerid']!=$table['id'])语句之前,回显这两个值,看看你得到了什么。 -
我只得到用户名 - 没有显示按钮
-
两个额外的大括号是什么?
-
对不起,我想我在上一个循环中错误地包含了它们
-
Please, don't use
mysql_*functions in new code。它们不再维护and are officially deprecated。看到red box?改为了解prepared statements,并使用PDO 或MySQLi - this article 将帮助您决定哪个。如果你选择 PDO,here is a good tutorial.
标签: php while-loop