如何使用从数据库中获取的数据为html表的列着色

时间:2015-07-31 16:13:48

标签: php mysql

我想根据表格中的部门和月份为列着色。  我的问题是,如果一个部门有超过一个月的时间,我只能获得一列色。例如:在IT有四月和六月。但我只在6月的专栏中获得了颜色。任何人都可以帮助我吗?

代码如下:

URLLoader

2 个答案:

答案 0 :(得分:0)

是的,这是Jay的一个很好的建议,你应该考虑一下,你也可以使用Mysqli。

设置您可以尝试的颜色:

使用var:

设置颜色
if($month == 'January'){
   var $color = '#ff9900';
}else if(...){}

然后回显信息:

echo '<td bgcolor="'.$color.'"></td>';

我认为当你打破html标签时会让人感到有些困惑。 希望它有所帮助。

(您可以尝试使用css样式标签或类来获取颜色)。

答案 1 :(得分:0)

除了您使用已弃用的mysql_函数之外,我还发现了与您提出的问题相关的两个问题。

首先,在您打开和关闭PHP标记的if语句的墙上导致您不再从HTML中关闭>并获得无效的HTML语法。做一些像这样的事情会更好:

<td bgcolor='<?php echo getColorByMonth($month); ?>'>put something here</td>

编写一个只根据月份返回所需颜色的函数。

其次,如果您的TD中没有包含某些内容,则浏览器可能不会应用该样式。换句话说,<td bgcolor='blue'></td>可能甚至不会显示<td bgcolor='blue'>yo</td>。如果您希望空白单元格可靠地显示,请在其中放置一个不间断的空格(&nbsp;<td bgcolor='blue'>&nbsp;</td>

第三,您也可以使用CSS,为每个月定义一个css类,然后打印月份:

<style>
.January { background-color: blue; }
.February { background-color: red; }
</style>
...
...
<td bgcolor='<?php echo $month; ?>'>&nbsp;</td>