2014-04-08 64 views
0

當我嘗試從我的數據庫表中檢索數據,我得到了以下錯誤:從數據源請求的未知參數「0」,第1行的DataTable

DataTables warning (table id = 'myTable'): Requested unknown parameter '0' from the data source for row 1 

下面是JS,我使用

<script> 
    $(document).ready(function() { 
     $('#myTable').dataTable(); 
    }); 
    </script> 

下面是我的表

<table id="myTable" class="table table-striped table-bordered table-hover table-condensed"> 
        <thead> 
         <tr> 
          <th>Name</th> 
          <th>Date</th> 
          <th>Options</th> 
         </tr> 
        </thead> 
        <tbody id="myTableOK"> 
         <?php echo $tableQuery ?> 
        </tbody> 
       </table> 

PHP代碼

function tableQuery($linkDB){ 

$out = ''; 

$query = $linkDB -> query("SELECT id,name,date 
           FROM tbl_mytable ORDER BY name ASC"); 

if($query -> num_rows != 0){ 


    while($listOK = $query -> fetch_assoc()) 
    { 
     $out .= ' 
      <tr> 
       <td>'.$listOK ['name'].'</td> 
       <td>'.$listOK ['date'].'</td> 
       <td class="centerTXT"><a data-action="edit" class="btn btn-xs" href="'.$listOK ['id'].'">Edit</a> <a data-accion="delete" class="btn btn-xs" href="'.$listOK ['id'].'">delete</a></td> 
      <tr> 
     '; 
    } 

} 
else{ 
    $out = ' 
     <tr id="noData"> 
      <td colspan="5" class="centerTXT">DATABASE WITHOUT DATA</td> 
     </tr> 
    '; 
} 
return $out; 
} 

我正在使用DataTables。

有人能告訴我爲什麼我會得到該錯誤以及如何將數據檢索到表中?

這是因爲我使用PHP來動態顯示數據庫的數據記錄?

謝謝。

回答

0

在你的腳本中你有echo $tableQuery,但tableQuery是一個函數。試試這個:

<?php echo tableQuery(); ?> 
+0

tableQuery是一個函數,但它返回$ out,即表格的的html代碼。這不是問題。 – pesk1

+0

你是如何在瀏覽器中回顯'$ out'的?有兩個問題:1.你根本沒有提到函數,你指的是一個名爲'$ tableQuery'的變量(我沒有在任何地方聲明)。和2.即使你正確地調用函數(使用'tableQuery()'),你仍然需要'echo'該函數返回的值。如果你在瀏覽器中查看HTML源代碼,我想你會發現你的表是空的。 DataTable試圖解析表來獲取一些數據,而這裏什麼也沒有。 – Kryten

0

數據表需要「thead」和「tbody」中列的確切數量,否則會引發錯誤。

當你的$查詢返回任何結果,你應該不會返回任何文字的,數據表會顯示「無表可用數據」,你可以通過傳遞一個參數到DataTable構造改變:

<script> 
    $(document).ready(function() { 
     $('#myTable').dataTable(
       "oLanguage": { 
        "sEmptyTable":  "My Custom Message On Empty Table" 
       } 
     ); 
    }); 
</script> 

來源: How to show empty data message in Datatables

相關問題