2014-01-29 690 views
0

我想使用來自mysql表格的數據創建HTML表格。這是PHP代碼我使用:使用PHP不工作從mysql數據生成HTML表格

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> 

這顯然是正確的,但網頁顯示如表:

table

這段代碼有什麼問題?

+0

你的HTML被用於印刷問題me.no正確。見http://jsfiddle.net/Ag4Et/ – user2936213

+0

你確定這是表的代碼? –

+0

@ViniciusMonteiro是的,我複製/粘貼頁面 –

回答

2

我只能重現錯誤的瀏覽器,但你必須在多個驗證錯誤的你標記。具體來說,你有2個元素ID的標題。將tr的id改爲別的。

變化:

<tr valign="middle" id="header"> 

本(或類似):

<tr valign="middle" id="tableHeader"> 
+0

就是這樣!謝謝你的幫助! –

+0

看起來像標題的id從模板/ yoo_nano2/styles/lines/css/layout.css中挑選了一些樣式。 – Kickstart

0

你似乎對「Desvio」被遺漏值

<td>-8200.00</td></tr><tr> 

應該是:

<td>-8200.00</td><td>&nbsp;</td></tr><tr> 
+0

不,「Desvio」在那裏共9欄。 –

相關問題