2012-07-25 47 views
0

我試圖使用PHP解析CSV,然後試圖用Dtable呈現從csv文件填滿我的Jquery Dtable,但似乎並不工作(jQuery的數據表從csv文件

TypeError: nCell is undefined 
[Break On This Error] nCell.className += ' '+oCol.sClass; 

)。什麼是其他解決方法,以使其工作?

<script type="text/javascript" charset="utf-8"> 
      $(document).ready(function() { 
       $('#result_table').dataTable(); 
      }); 
</script> 


<?php 
echo " 
<table cellpadding='0' cellspacing='0' border='0' class='display' id='result_table' width='100%'> 
      <thead> 
       <th>Zeit</th> 
       <th>Level</th> 
       <th>Message</th> 
       <th>Refferer</th>   
      </thead>\n\n"; 
$f = fopen("../logfile.csv", "r"); 
while (($line = fgetcsv($f)) !== false) { 
     echo "<tr>"; 
     foreach ($line as $cell) { 
       echo "<td>" . htmlspecialchars($cell) . "</td>"; 
     } 
     echo "<tr>\n"; 
} 
fclose($f); 
echo "\n <tfoot> 
     <tr> 
       <th>Zeit</th> 
       <th>Level</th> 
       <th>Message</th> 
       <th>Refferer</th>  
     </tr> 
    </tfoot></table>"; 
?> 
+0

代碼中的標記在哪裏?它是否是CSV文件的一部分(肯定不是)?你能否再次修改代碼? – Shant 2012-07-25 05:37:29

回答

0

根據上面的評論,它看起來像你缺少標籤。

<tbody> 
</tbody> 

我會檢查Firebug或查看源代碼中的HTML輸出後,它讀取CSV以確保它是一個有效的表。

+0

沒有幫助。我猜想渲染是不正確的 – lgt 2012-07-25 06:23:03

+2

是的,foreach($ line as $ cell){讓我覺得它每行只放一個單元格。所有行都需要4個單元格。 – Wulfram 2012-07-25 06:25:14

+0

也許你是對的當我var_dump(「​​」.htmlspecialchars($ cell)。「」);比看起來好像有一個單元格加 – lgt 2012-07-25 06:33:29