根据多个列上的数据显示一个图像
问题描述:
拥有包含4列(am_in,am_out,pm_in和pm_out)的数据库,该数据库保存我喜欢显示的用户是否在办公室(用户已记录am_in和pm_in)。 我喜欢用绿色显示图像,如果它们在外面,则显示为红色。 下面的代码显示了图像,但是显示的图像数量与列不是空的一样多。 我想要的只是当时显示一个图像,如果用户在绿色图像,或者如果用户在外,则显示红色图像。根据多个列上的数据显示一个图像
PHP知识=基本
<?php
if ($row_io['am_in'] == !NULL) {
echo '<img src="../images/in.png">';
}
if ($row_io['am_out'] == !NULL) {
echo '<img src="../images/out.png">';
}
if ($row_io['pm_in'] == !NULL) {
echo '<img src="../images/in.png">';
}
if ($row_io['pm_out'] == !NULL) {
echo '<img src="../images/out.png">';
}
?>
答
为了您的列的每一个,我会切换到:
if ($row_io['column_name'] != NULL) {
我以前从未使用过== !
,所以我不知道如果它是有效的,但我知道!=
是执行“不等于”检查的首选方式。
答
<?php
if ((!empty($row_io['am_in'] && empty($row_io['am_out']) || (!empty($row_io['pm_in'] && empty($row_io['pm_out'])) {
echo '<img src="../images/in.png">';
}else{
echo '<img src="../images/out.png">';
}
?>
如果他们为AM或PM签入但未签出,则返回true。如果他们没有办理入住手续,或者他们已经办理登记入住手续,那么它将返回错误。
你在'am_in','am_out','pm_in','pm_out'(Datatype)列中存储什么值? – 2012-02-16 12:58:33
我们的答案是否提供了您需要的?如果不是,我们需要反馈。 – James 2012-02-16 14:44:24