我正在尝试在收件箱中为未读邮件添加“新”。我不认为我可以在回声中使用if语句,并且我已经尝试过并且未能理解正确使用三元运算符。我将不胜感激任何帮助。非常感谢。
如果read_yet ='no',我想将此代码添加为另一个echo语句:
echo '<td>NEW</td>' ;
这是我当前的收件箱代码。
$sql = mysqli_query($con, "select * from messages
WHERE deleted = 'no' AND to_user = '" . $_GET['username'] . "'
ORDER BY id DESC");
while ($row = mysqli_fetch_array($sql)){
echo '<tr>';
echo '<td><a href="profile.php?username=' ;
echo $row['from_user'] ;
echo '">';
echo '<img id="usersimage" src="images/profileimg/thumbnail_'.$row['from_user'];
echo '.jpg"</a></td>' ;
echo '<td><a href="users.php?username=' ;
echo $row['from_user'] ;
echo '">';
echo $row['from_user'];
echo "</a></td><td><a href='messageid.php?id=".$row['id']."'><font color='#b2ccdb'>" .$row['subject'] ;
echo '</a></font></td>';
echo '</tr>';
}
答案 0 :(得分:2)
如果您要添加其他列,我建议您不要使用三元运算符,而只需使用if
:
if ($row['read_yet' == 'no') {
echo '<td>NEW</td>';
}
但是,如果您始终输出此列并需要更改显示,则可以使用三元运算符。
echo '<td>' . ($row['read_yet' == 'no' ? 'NEW' : 'READ') . '</td>';
注意:三元组可能会产生线路噪音。因此,我更喜欢临时变量,辅助函数或传统的if
。
答案 1 :(得分:2)
这样的三元组:
$foo = ($bar) ? 'true result' : 'false result';
在功能上等同于:
if ($bar) {
$foo = 'true result';
} else {
$foo = 'false result';
}