我有一张桌子,我想修复这个列,以便它有条理。
这就是我的尝试:
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 |
|============|=========|===========|=======|===========|
我应该添加什么?
答案 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>';
?>