Php 在echo标记内检查数据库中的内容
我使用while循环在表中回显数据库中的用户。现在,我想检查“loggedin”列是否设置为1(如果设置为1,我想在名称后面加上online)。这是我的代码:Php 在echo标记内检查数据库中的内容,php,sql,if-statement,Php,Sql,If Statement,我使用while循环在表中回显数据库中的用户。现在,我想检查“loggedin”列是否设置为1(如果设置为1,我想在名称后面加上online)。这是我的代码: <tr> <th>Name</th> <th>Date</th> <th>Actions</th> </tr> <?php while($row = mysqli_fetch_array($resultUsers)
<tr>
<th>Name</th>
<th>Date</th>
<th>Actions</th>
</tr>
<?php
while($row = mysqli_fetch_array($resultUsers))
{
echo "<tr>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['date'] . "</td>";
echo "<td><a class='btn btn-default' href='member.php?user=" . $row['id'] . "'>Bekijk</a> <a class='btn btn-default' href='member.php?user=" . $row['id'] . "&sendrequest=1s'>Stuur vriendschapsverzoek</a></td>";
echo "</tr>";
}
?>
名称
日期
行动
现在,我想添加一些代码来检查用户是否在线。像这样:
echo "<td>" . $row['name'] . "" . if($row['loggedin'] === 1) {"<p>Online</p>"} . "</td>";
echo”“$行['name']。"" . 如果($row['loggedin']==1){“在线”}。"";
您可以使用三元运算符。试试这个:
echo "<td>" . $row['name'] . "" . (!empty($row['loggedin']) && $row['loggedin'] === 1) ? '<p>Online</p>' : '' . "</td>";
echo”“$行['name']。"" . (!empty($row['loggedin'])和&$row['loggedin']==1)?' 在线':''。"";
希望这有帮助。您可以使用三元运算符:
echo "<td>" . $row['name'] . " " . ($row['loggedin'] === 1 ? "<p>Online</p>" : "") . "</td>";
echo”“$行['name']。" " . ($row['loggedin']==1?”联机:“”)。"";
按原样编写html并用html附加PHP
代码的最佳方法,如:
<tr>
<th>Name</th>
<th>Date</th>
<th>Actions</th>
</tr>
<?php while ($row = mysqli_fetch_array($resultUsers)) { ?>
<tr>
<td><?php echo $row['name']; ?></td>;
<td><?php echo $row['date']; ?></td>;
<td>
<a class='btn btn-default' href='member.php?user=<?php echo $row['id']; ?>'>Bekijk</a> <a class='btn btn-default' href='member.php?user=<?php echo $row['id']; ?>&sendrequest=1s'>Stuur vriendschapsverzoek</a>
<?php if ($row['loggedin'] === 1) { ?>
<p>Online</p>
<?php } ?>
</td>
</tr>;
<?php } ?>
名称
日期
行动
;
;
在线
;
三元需要使用三元运算符
echo "<td>" . $row['name'];
echo $row['loggedin'] === 1 ? '<p>Online</p>' : '';
echo "</td>";
echo”“$行['name'];
echo$row['loggedin']==1?“ 在线“:”;
回声“;
对于单行代码
echo "<td>" . $row['name'] . "" . ($row['loggedin'] === 1 ? "<p>Online</p>" : '' ) . "</td>";
echo”“$行['name']。"" . ($row['loggedin']==1?”在线:“”)。"";
如果设置了它,查看它总是很好的(isset($row['whatevercolumn']))
不要使用empty()检查,默认情况下,如果它为空,将抛出false。因此,不必使用额外的函数来消耗您的资源。比我快一秒+1此问题已得到回答,
empty()
与此无关。isset()
也不需要,只要在查询中选择了字段。非常感谢。从现在起,我将使用这种方法(更容易…)