我用PHP和MySQL数据库创建了票务系统.
在视图故障单页面上,我显示了数据库中的每个故障单,其中包括每个故障单的优先级.优先级设置为低,正常或高.
当数据传递到我的页面时,它会将div中的优先级设置为我在数据库表中所说的内容.
我想找到一种方法来改变背景颜色,具体取决于优先级字段中显示的值,所以红色表示高,橙色表示正常,绿色表示低.
HTML/PHP
<div class="priority">
<?php
$priority_query = "SELECT priority FROM tickets";
$priority = mysql_query($priority_query);
if ($priority = 'low') { ?>
<div class="priority_low"><?php echo 'Priority: ' . mysql_result ($result,$j,'priority') .''; ?></div>
<?php
} else if ($priority = 'normal') { ?>
<div class="priority_normal"><?php echo 'Priority: ' . mysql_result($result,$j,'priority') .''; ?></div>
<?php
} else if ($priority = 'high') { ?>
<div class="priority_high"><?php echo 'Priority: ' . mysql_result($result,$j,'priority') .''; ?></div>
<?php } ?>
</div>
Run Code Online (Sandbox Code Playgroud)
CSS
.priority_low {
background-color: green;
}
.priority_normal {
background-color: orange;
}
.priority_high {
background-color: red;
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试了上面的代码,但这只会带回一个绿色背景,这显然不是我需要的.
有人有任何想法让这项工作?
你现在正在做一项任务,而不是比较.
在if ($priority = 'low').
它应该if ($priority == 'low')与2x等号一致.
参考文献:
即:
while ($row = mysql_fetch_array($priority))
{
if(...) // your if conditions
}
Run Code Online (Sandbox Code Playgroud)
并使用$row而不是查询的$priority变量,这会抛出你的错误.
即:if ($row == 'low'){...} 等等.等
参考文献:
脚注:
mysql_* 功能弃用通知:
http://www.php.net/manual/en/intro.mysql.php
此扩展自PHP 5.5.0起不推荐使用,不建议用于编写新代码,因为将来会删除它.相反,应该使用mysqli或PDO_MySQL扩展.另请参阅MySQL API概述,以便在选择MySQL API时获得进一步的帮助.
这些函数允许您访问MySQL数据库服务器.有关MySQL的更多信息,请访问» http://www.mysql.com/.
有关MySQL的文档,请访问» http://dev.mysql.com/doc/.