2015-04-03 37 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