2015-04-03 39 views
0

這裏有一個簡單的問題,但對數據表是新的,所以原諒我的無知:我有一個查詢行,我放入一個數組,然後以JSON格式進行編碼,我怎麼能發送這個數組到數據表以填充每一行?我看了其他線程,但他們使用ajax從外部引用腳本,而我的位於同一頁面(不知道這是否有所作爲)。我的腳本是這樣的:如何發送JSON編碼的PHP數組到同一頁上的數據表

<?php 
if(isset($_POST['post_id'])){ 
    $in = $_POST['post_id']; 
} 
$data = array(); 
foreach ($in as $id){ 
    $query = $link->prepare("SELECT provider_num, provider_name, 233_net_charity_care, 291_cost_of_non_mcr_bad_debts, 301_cost_of_uncomp_care 
          FROM `s10` 
          WHERE `id` = :id"); 
    $query->bindParam(':id', $id, PDO::PARAM_INT); 
    $query->execute(); 
    $results = $query->fetch(PDO::FETCH_ASSOC); 
    $data[] = $results; 
} 
json_encode($data); 
?> 

哪裏POST_ID是從以前的形式提交頁面,爲了簡單起見,讓說,我只有一個行提交了該時間ID值的初始陣列。

的JSON輸出看起來像這樣

[{"provider_num":"140124","provider_name":"JOHN H. STROGER JR. HOSP OF COOK CTY","233_net_charity_care":"163307737","291_cost_of_non_mcr_bad_debts":"181677291","301_cost_of_uncomp_care":"344985028"}]

以什麼方式我然後初始化數據表來接收該數據

到目前爲止,我有:

$(document).ready(function() { 
    $('#example').dataTable({ 
     "ajax": "",      <== What goes here? 
     "columns": [ 
      { "data": "provider_num" }, 
      { "data": "provider_name" }, 
      { "data": "233_net_charity_care" }, 
      { "data": "291_cost_of_non_mcr_bad_debts" }, 
      { "data": "301_cost_of_uncomp_care" } 
     ] 
    }); 
}); 

任何有識之士將非常好,我對jquery很新,所以如果這是一個簡單的問題,我很抱歉。我試圖閱讀文檔,但遇到麻煩。

在此先感謝

+0

'json_encode(數據)'應該是'回聲JSON編碼(數據)'。 – Barmar 2015-04-03 23:02:15

+0

所以在這種情況下,只需使腳本外部,然後在數據表中的ajax字段中引用它?目前它在同一頁面上,我不希望它在該頁上回顯 – Habitat 2015-04-03 23:02:55

+0

'@ Barmar',你讓我發笑,並帶有該評論。 'ajax:'是數據表獲取外部JSON數據的地方。 – PHPglue 2015-04-03 23:22:47

回答

0

的第一件事就是,如果你的前端腳本和服務器腳本(PHP)是在同一個頁面上,你不需要使用AJAX。

,你可以簡單地設置這樣的數據你的PHP腳本後

var tableData = <?php echo json_encode($data); ?>; 

然後在數據表initialize方法,使用這種

$(document).ready(function() { 
    $('#example').dataTable({ 
     "aaData": tableData,        
     "aoColumns": [ 
      { "data": "provider_num" }, 
      { "data": "provider_name" }, 
      { "data": "233_net_charity_care" }, 
      { "data": "291_cost_of_non_mcr_bad_debts" }, 
      { "data": "301_cost_of_uncomp_care" } 
     ] 
    }); 
}); 
+0

代碼中存在語法錯誤。 – PHPglue 2015-04-03 23:21:08

+0

@PHPglue,謝謝。糾正。 – Sohel 2015-04-03 23:24:44

+0

引用最後一個'aoColumns'數組'title'屬性丟失。 – PHPglue 2015-04-03 23:28:25