我正在尝试使用if
- 语句来更改<td>
的颜色。
基本上,我有一个简单的查询来从数据库中检索信息。 另外,我在那里有一个列,它可以保存信息,就像任务是否完成一样。当我检索到所有这些信息时,我需要完成的任务是绿色的,而其他任务则没有任何颜色。
我已经接受了答案,但我找不到令我满意的任何东西。
例如:
$qry = mysql_query("select * from table");
$recs = array();
while($row = mysql_fetch_array($qry))
$recs[]=$row;
mysql_free_result($qry);
我试图将while语句添加到上面的代码中,但我感到很困惑并且它不起作用:(
我正在使用heredoc打印结果: 如何在这里给他们颜色?
<?php
$last_id=0;
foreach($recs as $rec)
{
$html=<<<HTML
<tr>
<td><b>Номер</b></td>
<td>$rec[0]</td>
</tr>
<tr>
<td><b>Номер документа</b></td>
<td>$rec[1]</td>
</tr>
<tr>
<td><b>Дата регистрации</b></td>
<td>$rec[8]</td>
</tr>
<tr>
<td><b>От кого</b></td>
<td>$rec[2]</td>
</tr>
<tr>
<td><b>По</b></td>
<td>$rec[4]</td>
</tr>
<tr>
<td><b>Краткое содержание</b></td>
<td>$rec[3]</td>
</tr>
<tr>
<td><b>Исполнитель</b></td>
<td>$rec[5]</td>
</tr>
<tr>
<td><b>Срок исполнения</b></td>
<td>$rec[6]</td>
</tr>
<tr>
<td><b>Срок исполнения продлен до</b></td>
<td><b>$rec[10]</b></td>
</tr>
<tr>
<td><b>Прислан</b></td>
<td>$rec[9]</td>
</tr>
<tr>
<td><b>Примечание</b></td>
<td>$rec[7]</td>
</tr>
<tr>
<td bgcolor="#838B83"> </td>
<td bgcolor="#838B83"> </td>
</tr>
HTML;
print $html;
if($rec[0]>$last_id)
$last_id=$rec[0];
};
$new_id=$last_id+1;
?>
答案 0 :(得分:5)
而不是颜色使用类,因此您可以在CSS中更改它
<td<?php if($row['complete']) echo ' class="complete"'; ?>>data</td>
答案 1 :(得分:1)
<table>
<tr>
<td>column heading</td>
</tr>
<?php
$qry=mysql_query("select * from table");
while($row=mysql_fetch_array($qry)) {
if($row['urcolumnn']==1)
{
echo "<tr bgcolor=green>";
}
else
{
echo "<tr>";
}
?>
<td>
<?php echo $row['urcolumn']; ?>
</td>
</tr>
<?php } ?>
</table>
这是一个示例代码。认为这会对你有所帮助。在这里我将背景颜色设为<tr>
,如果您想为<td>
提供颜色,请使用此<td style="background-color:green;">
答案 2 :(得分:0)
首先应更改列值,将其结构更改为int,并将默认值设置为“0”。所以当任务完成时,字段值应更改为“1”。
现在来到你的代码:
$qry = mysql_query("select * from table");
while($row = mysql_fetch_assoc($qry)){
if($row['status']==1){
echo "<td color="green">Data</td>"
}
else{
echo "<td color="white">Data</td>";
}
}
因此,你可以获得绿色的行,状态为== 1表示完整,白色表示不完整。
答案 3 :(得分:0)
我建议您使用三元运算符,而不是使用IF语句,或者您可以使用其他解决方法来使用数组来定义颜色,这将有助于您为全局定义每个状态值的各种颜色,请在下面找到示例:
$aryColor = array(
'complete' => 'green',
'incomplete' => "red",
'pending' => 'orange'
.....
);
//you can specify values for all of your status, or leave them blank for no color, the keys in the array are the possible values from your status field
foreach($recs as $rec) {
echo '<tr bgcolor="'.$aryColor[$rec['status_field']].'">
<td>'.$rec['title_field'].'</td>
</tr>';
}
我希望这可以帮助你,你可以轻松地为HEREDOC编辑。