0

我遇到了一个我无法弄清楚的问题。我有一个页面,我想添加“已验证”或“未验证”的图像。我的代码如下:

PHP

if($listing['priority']==0 {
   $header->set('ver_status,'<img src="images/icon_unverified.png"/>');
} else {
   $header->set('ver_status,'<img src="images/icon_verified.png"/>');
}

HTML

<?php echo $ver_status; ?>

出于某种原因,当我在我的网站上运行该页面时,该变量为空。

数据库包含一个列表表,该表包含一个默认值为 0 的优先级字段。除非客户更新信息,自动将优先级字段值更改为 1,否则所有配置文件状态为“未验证”

$header 是分配给模板的变量

0 处的所有优先级代码都应显示未经验证的图像。所有其他 1-5 都显示经过验证的图像。

我在另一个页面上做了这个,效果很好。该代码是:

if (config['language'] == 2) {
   $header->set('language_flag','<img src="images/flags/Spanish.png" />');
} else {
   $header->set('language_flag','<img src="images/flags/English.png" />');
}

其中代码 2 是西班牙语,代码 1 是英语。

我的代码中是否缺少一些我没有看到的东西?我没有收到任何错误消息,只是空值。

4

2 回答 2

0

您的 if 语句中似乎缺少一个右括号。如果直接从您的代码中复制并粘贴,则可能会导致问题 - 它也应该会导致错误消息,但您可能已将其关闭。

如果这只是将代码复制到 SO 中的错字,当然,这是没有帮助的。

于 2013-03-20T18:42:41.453 回答
0

该变量为空,因为没有变量。如果您想通过回显变量的值来检索图像,只需键入

if($listing['priority']===0){
    $ver_status='<img src="images/icon_unverified.png">';
}else{
    $ver_status='<img src="images/icon_verified.png">';
}

您在代码中所做的是设置对象的键,但是当您尝试获取相同的键时,您没有正确引用它。echo $header->ver_status如果您不想使用普通变量,您应该如何检索该值。我建议阅读http://php.net/manual/en/language.types.object.php

请注意,您的代码中也有错字。t('ver_status,'是一个开串。
另请注意,除非您使用 XML,否则标记中不需要斜杠。

于 2013-03-20T18:48:09.253 回答