$button = $button == TRUE ? "<span class='button_join'>Join</span>" : "";
基本上,如果button = TRUE
,那麼顯示按鈕。 但是,當我有$button == TRUE ?
時,按鈕總是顯示,但我從來沒有看到它在任何地方變得真實?php變量忽略布爾值?即使不允許按鈕不斷上表
Mysql結果顯示2行「進行中」,1行「可用」。
但問題是,該按鈕顯示的每一行,生病後的照片,所以你會知道我說的是:
img http://gyazo.com/4ed23f9793c6f69812d6140f64cea2a2.png
有什麼不對?
這是代碼:
while ($row = $query->fetch(PDO::FETCH_ASSOC))
{
if (!Ping::remote($row['server_ip'], $row['server_port']))
{
$status = "Offline";
}
else
{
$status = $row['server_status'];
}
if ($status != "In Progress" || $status != "Offline" || $status != "Full" || $status == "Available")
{
$joinButton = TRUE;
}
else
{
$joinButton = FALSE;
}
Template::drawTableRow (
$row['server_name'],
$row['server_players'],
$row['server_map'],
$row['server_status'],
$joinButton
);
}
drawTableRow
:
public static function drawTableRow($name, $players, $map, $status, $button)
{
$button = $button == TRUE ? "<span class='button_join'>Join</span>" : "";
$status = $status == "Full" || $status == "In Progress" || $status == "Offline" ? "<span class='status_error'>".$status."</span>" : "<span class='status_success'>".$status."</span>";
echo
'
<tr>
<td>
'.$name.'
</td>
<td>
'.$players.'
</td>
<td>
'.$map.'
</td>
<td>
'.$status.'
</td>
<td>
'.$button.'
</td>
</tr>
';
}
有什麼不對呢?
我可以強烈建議你使用不同的變量,這段代碼在幾周內將成爲一場噩夢。我在想像'$ buttonHtml = $ button === TRUE? 「加入」:「」;; – Pevara
是的,我只是檢查說實話,因爲我從來沒有做過(IF)?結果:其他結果陳述是如此。謝謝 –