[英]Produce HTML table from mysql data using PHP not working
我想使用mysql表中的数据创建一个HTML表。 这是我正在使用的PHP代码:
while ($row = $result->fetch())
{
$registos[] = array('id'=>$row['id'], 'data'=>$row['data'], 'conta'=>$row['conta_id'],
'categoria'=>$row['categoria_id'], 'entidade'=>$row['entidade_id'], 'orcamento'=>$row['orcamento'],
'atual'=>$row['atual'],'user'=>$row['user_key'], 'desvio'=>$row['desvio']);
}
echo
'<table border="1" cellspacing="0" cellpadding="0" class="tabela" style="margin:auto;">
<tbody>
<tr valign="middle" id="header">
<th>id</th>
<th>Data</th>
<th>Conta_id</th>
<th>Categoria_id</th>
<th>Entidade_id</th>
<th>Orçamento</th>
<th>Atual</th>
<th>User_key</th>
<th>Desvio</th>
</tr>';
foreach ($registos as $registo){
//print ($registo['conta']);
echo '<tr>';
echo '<td>'.$registo['id'].'</td>';
echo '<td>'.$registo['data'].'</td>';
echo '<td>'.$registo['conta'].'</td>';
echo '<td>'.$registo['categoria'].'</td>';
echo '<td>'.$registo['entidade'].'</td>';
echo '<td>'.$registo['orcamento'].'</td>';
echo '<td>'.$registo['atual'].'</td>';
echo '<td>'.$registo['user'].'</td>';
echo '<td>'.$registo['desvio'].'</td>';
echo '</tr>';
};
echo
'</tbody></table>';
这产生以下HTML:
<table border="1" cellspacing="0" cellpadding="0" class="tabela" style="margin:auto;">
<tbody>
<tr valign="middle" id="header">
<th>id</th>
<th>Data</th>
<th>Conta_id</th>
<th>Categoria_id</th>
<th>Entidade_id</th>
<th>Orçamento</th>
<th>Atual</th>
<th>User_key</th>
<th>Desvio</th>
</tr><tr><td>1</td><td>2014-01-21</td><td>3</td><td>4</td><td>5</td><td>10000.00</td><td>1800.00</td><td>1</td><td>-8200.00</td></tr><tr><td>2</td><td>2014-01-23</td><td>4</td><td>4</td><td>5</td><td>500.00</td><td>400.00</td><td>1</td><td>-100.00</td></tr><tr><td>3</td><td>2014-01-13</td><td>5</td><td>3</td><td>4</td><td>50.00</td><td>150.00</td><td>1</td><td>100.00</td></tr><tr><td>4</td><td>2014-01-08</td><td>3</td><td>4</td><td>3</td><td>500.00</td><td>900.00</td><td>1</td><td>400.00</td></tr><tr><td>5</td><td>2014-01-15</td><td>6</td><td>4</td><td>4</td><td>80.00</td><td>90.00</td><td>1</td><td>10.00</td></tr><tr><td>6</td><td>2014-01-15</td><td>5</td><td>3</td><td>4</td><td>1800.00</td><td>1650.00</td><td>1</td><td>-150.00</td></tr></tbody></table>
这显然是正确的,但页面显示如下表:
这段代码有什么问题?
我只能在Chrome中重现错误,但您的标记中存在许多验证错误。 具体来说,你有2个元素id称为标题。 将tr的id更改为其他内容。
更改:
<tr valign="middle" id="header">
对此(或类似):
<tr valign="middle" id="tableHeader">
你似乎错过了“Desvio”的价值观
<td>-8200.00</td></tr><tr>
应该:
<td>-8200.00</td><td> </td></tr><tr>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.