HTML-PHP表Colspan

时间:2014-03-11 11:39:06

标签: php html-table

我有一张桌子,我想修复这个列,以便它有条理。

这就是我的尝试:

print "<table table border=\"1\" cellpadding=\"10\" width=\"100;\">"; 
print "<td>Date</td>";
print "<td>Payor</td>";
print "<td width=100><th colspan=\"3\">Songs</th></td>";
print "<td><th>Title</th><th>Artist</th><th>Album</th></td>"; 

while($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{ 
print "<tr>";
print "<td>" . $row['Date'] . "</td>";
print "<td>" . $row['Payor'] . "</td>";
print "<td>" . $row['Title'] . "</td>";
print "<td>" . $row['Artist'] . "</td>";
print "<td>" . $row['Album'] . "</td>"; 
print "</tr>";

但输出并不是我的预期。

当前输出:

|============|=========================================|
|    Date    |  Payor  |                               |
|============|=========================|               |
|            | Song                    |               |
|============|=========================================|
|            |  Title  |   Artist  | Album |           |
|============|=========|===========|=======|===========|
| 2014-01-01 | Customer| Mamma Mia |  Abba | Mamma Mia |
|============|=========|===========|=======|===========| 

应该输出:

|============|=========|===============================|
|    Date    |  Payor  |            Song               |
|            |         |===========|=======|===========|
|            |         |  Title    | Artist|  Album    |
|============|=========|===========|=======|===========|
| 2014-01-01 | Customer| Mamma Mia |  Abba | Mamma Mia |
|============|=========|===========|=======|===========| 

我应该添加什么?

6 个答案:

答案 0 :(得分:3)

让我们变得美丽!

更新 - 看到您更改了问题中的代码...以下示例可以轻松地针对您需要的任何输出进行调整:)只需将其用作指南。

为什么不使用纯HTML + CSS小提琴示例 - Fiddle Link!

修改 - 这是另一个包含rowpans的示例 - Second Fiddle Link!

PHP和HTML

print "
<table>
<thead>
    <tr>
        <th colspan=\"3\">Songs</th>
    </tr>

    <tr>
        <th>Title</th>
        <th>Artist</th>
        <th>Album</th>
    </tr>
</thead>
<tbody>";  

while($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{ 
print "<tr>
<td>" . $row['Title'] . "</td>
<td>" . $row['Artist'] . "</td>
<td>" . $row['Album'] . "</td>
</tr>";
}
print "
</tbody>
</table>
";

你应该使用CSS来设置表格样式......如:

table { border-collapse: collapse; width: 300px; }
th,td { border: solid 1px #CCC; padding: 10px; }

答案 1 :(得分:0)

您仍然需要在引号中输入cellpadding和width的数字。像这样:

print '<table border cellpadding="10" width="500">';

您的表格中也有错误,因为您的<td>是一个标题单元格,<th>是一个单元格。您应该在<tr>周围<th>代替。

整件事应该是这样的:

print '<table border cellpadding="10" width="500">'; 
print '<tr width="100"><th colspan="3">Songs</th></tr>';
print '<tr><th>Title</th><th>Artist</th><th>Album</th></tr>'; 

while($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{ 
    print '<tr>';
        print '<td>' . $row['Title'] . '</td>';
        print '<td>' . $row['Artist'] . '</td>';
        print '<td>' . $row['Album'] . '</td>'; 
    print '</tr>';
}

答案 2 :(得分:0)

使用以下代码并尝试此

print "<table border cellpadding=10 width=500>"; 
print "<tr><td width=100><th colspan=\"3\">Songs</th></td></tr>";
print "<tr><td><th>Title</th><th>Artist</th><th>Album</th></td></tr>"; 

答案 3 :(得分:0)

也许就是这样

print "<tr width=100><th colspan=\"3\">Songs</th></tr>";
print "<tr><th>Title</th><th>Artist</th><th>Album</th></tr>";

答案 4 :(得分:0)

你必须写:

print '<table table border="1" cellpadding="10" width="100">'; 
print '<tr><th colspan="3">Songs</th></tr>';
print '<tr><th>Title</th><th>Artist</th><th>Album</th></tr>'; 

while($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{ 
    print '<tr>';
        print '<td>' . $row['Title'] . '</td>';
        print '<td>' . $row['Artist'] . '</td>';
        print '<td>' . $row['Album'] . '</td>'; 
    print '</tr>';
....
}
print '</table>'

答案 5 :(得分:0)

从你的标签我发现有很多属性没有正确的值,例如边框没有值,你的标签没有正确关闭。您可以复制并通过此代码,运行它并查看您现在的表格。我想这会帮助你。

<?php 
print '<table width="500" border="0" cellspacing="0" cellpadding="10">';
print '<tr>';
print '<th colspan="3">songs</th>';
print '</tr>';
print '<tr>';
print ' <th>Title</th>';
print '<th>Artist</th>';
print '<th>Album</th>';

while($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{ 

 print '</tr>';
 print '<tr>';
 print '<td>'. $row['Title'] .'</td>';
 print '<td>' .$row['Artist']. '</td>';
 print '<td>'. $row['Album'] . '</td>';
 print '</tr>';
 }
 print '</table>';

?>