$button = $button == TRUE ? "<span class='button_join'>Join</span>" : "";
基本的に、 の場合button = TRUE
、ボタンを表示します。しかし、ボタンを$button == TRUE ?
オンにすると常にボタンが表示されますが、どこにも当てはまりませんか?
Mysql の結果では、2 行が「進行中」、1 行が「使用可能」と表示されます。
しかし、問題は、ボタンがすべての行に表示されることです。写真を投稿して、私が話していることを理解できるようにします。
(出典:gyazo.com)
どうしたの?
これはコードです:
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>
';
}
何が問題なのですか?