不要在 PHP if 语句中使用or
and 。and
正确的运算符是||
for or 和&&
for and。
;
您在语句的末尾还有一个if
导致问题的语句。
while($row = mysql_fetch_array($result))
{
$rank = $row["rank"];
if($rank == "President/Main Developer" || $rank == "Administrator/Asst. Developer")
{
echo "In first while";
echo "<td>" . $row["username"] . "</td>";
echo "<td style='color: #FF4747'>" . $row["rank"] . "</td>";
$time = formatTime($row["joinDate"]);
echo "<td>" . $time . "</td>";
echo "</tr>";
}
}
和第二段代码:
while($row2 = mysql_fetch_array($result))
{
echo "<tr>";
echo "In second while";
echo "<td>" . $row2["username"] . "</td>";
if ($row["rank"]!="President/Main Developer" && $row2["rank"]!="Administrator/Asst. Developer")
{
echo "<td>" . $row2["rank"] . "</td>";
}
$time = formatTime($row2["joinDate"]);
echo "<td>" . $time . "</td>";
echo "</tr>";
}
此外,您可能希望在回声中使用换行符。它对浏览器中的输出没有影响,但它使您自己阅读 HTML 变得更加容易。你可以这样做:
echo "<td>" . $row2["rank"] . "</td>\n";
唯一的区别是当您查看代码时,enxt 位将从新行开始。
编辑:重新没有进入第二个循环
如果您希望使用同一行,则需要将其全部放入一个 while 循环中 - 或再次针对您的数据库运行查询。while 循环将一次获取结果的每一行,直到用完为止。除非您再次查询数据库,否则根本不会再获取任何行,因此它永远不会进入循环。