2013-03-01 64 views
0

如何连接外部CSS文件以显示从MySQL数据库提取的数据?我可以使用CSS显示数据而不是使用表格。我想完全避免表格中的抽取数据。使用外部css显示提取的mysql数据

这是从MySQL数据库获取数据的代码:

<?php 
echo "Database Date: " .date("Y-m-d"); 
?> 

变量包括在此数据是:分配NCL号码,医院,年龄,性别,原发癌诊断的日期和最新的管理对病人。

<style type="text/css"> 
    table.data { width:100%; margin: 0; 
     border: 1px solid black; border-spacing: 2px; } 
    .id {width: 7%; background-color: #c7c7c0; } 
    .date {width: 12%; background-color: #d8d8d1; } 
    .nclnumber { width: 10%; background-color: #c7c7c0; } 
    .hospital {width: 17%; background-color: #d8d8d1; } 
    .age { width: 3%; background-color: #c7c7c0; } 
    .sex { width: 2%; background-color: #d8d8d1; } 
    .cancer { width: 10%; background-color: #d8d8d1; } 
    .dateofdiagnosis { width: 7%; background-color: #d8d8d1; } 
    .notes { width: 32%; background-color: #d8d8d1; } 
</style> 

<table class="data" border="0" cellspacing="2"> 
    <tr> 
    <td class="id"><b>Id</b></td> 
    <td class="date"><b>Date</b></td> 
    <td class="nclnumber"><b>NCL Number</b></td> 
    <td class="hospital"><b>Hospital</b></td> 
    <td class="age"><b>Age</b></td> 
    <td class="sex"><b>Sex</b></td> 
    <td class="cancer"><b>Diagnosed Cancer</b></td> 
    <td class="dateofdiagnosis"><b>Date of Diagnosis</b></td> 
    <td class="notes"><b>Notes</b></td> 
    </tr> 
</table> 


<?php 
// Connects to your Database 
mysql_connect("localhost", "root", "") or die(mysql_error()); 
mysql_select_db("cancer") or die(mysql_error()); 
$data = mysql_query("SELECT * FROM cancer WHERE Age ='1'OR Age = '2' OR Age = '3'OR Age = '4'OR Age = '5'OR Age = '6'OR Age = '7'OR Age = '8'OR Age = '9'") 
or die(mysql_error()); 


while($info = mysql_fetch_array($data)) { 
    echo "<table class='data' border='0' cellspacing='2'> 
      <tr> 
      <td class='id'>".$info['Id']."</td> 
      <td class='date'>".$info['Date']."</td> 
      <td class='nclnumber'>".$info['NCL_Number']."</td> 
      <td class='hospital'>".$info['Hospital']."</td> 
      <td class='age'>".$info['Age']."</td> 
      <td class='sex'>".$info['Sex']."</td> 
      <td class='cancer'>".$info['Diagnosed_Cancer']."</td> 
      <td class='dateofdiagnosis'>".$info['Date_of_Diagnosis']."</td> 
      <td class='notes'>".$info['Notes']."</td> 
      </tr> 
     </table>"; 
    } 
?> 
+1

数据_tabular_?如果是这样,为什么要避免表? '

'标签不是普遍邪恶的,可以用CSS替换,它们只是不适合布局。 – 2013-03-01 17:15:26

+0

欢迎来到Stack Overflow!请不要使用'mysql_ *'函数来编写新的代码。他们不再被维护,社区已经开始[弃用流程](http://news.php.net/php.internals/53799)。看到[红色框](http://uk.php.net/manual/en/function.mysql-connect.php)?相反,您应该了解[准备好的陈述](http://en.wikipedia.org/wiki/Prepared_statement)并使用[PDO](http://php.net/pdo)或[MySQLi](http:// php.net/mysqli)。如果你选择PDO [这里是一个很好的教程](http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers)。 – War10ck 2013-03-01 17:27:12

回答

6

绝对没有理由不对表格数据使用<table>元素。

有些人的反桌歇斯底里只是一个误解:错误地使用表进行布局的目的是。不过,HTML标签没有任何问题。实际上,使用任何其他HTML元素来显示表格数据对于语义来说都是不利的。

<table>标记及其包含的<tr>行和<td>列通知浏览器呈现其中的数据是相关的和列状的。不要将<table>(或任何HTML标签)视为严格意义上的视觉显示元素。它们将数据的意义传达给解析它的机器。

1

让我们来梳理一下。在CSS而不是tables中显示,因为tables及其关联的标记是HTML元素而CSS是样式,所以您可以应用于这些元素。它们并不等同。

表格的替代方法是使用divsspans的组合创建复杂,复杂且复杂的布局。

但是,如果数据是表格,绝对没有理由为了避免使用<table>标签而使用这种尴尬的设计。这就是为什么<table>标签在HTML规范中。

为了布局而滥用<table>标签已给标签一个不好的代表。当正确使用时(即显示表格数据),它可能非常有用。

最佳建议:使用<table>标签,并遵循社区wiki的建议。