显示来自json的数据

时间:2018-12-11 01:51:38

标签: php jquery ajax jquery-easyui

我正在尝试从json显示表格,但失败了,这是怎么回事:

$nip=$_POST['nip']; 
$sql = "select satker,shift_description,nip  FROM jamkerja 
    inner join master_shift on master_shift.shiftno=jamkerja.shiftno 
    inner join tr_jamkerjahdr on jamkerja.id_jamkerja=tr_jamkerjahdr.id_jamkerja 
    inner join tr_jamkerjamember on tr_jamkerjamember.trno=tr_jamkerjahdr.trno 
    where nip='$nip' ";

$result = $con->query($sql);

$data = array();
while($row = mysqli_fetch_assoc($result)){
    $data[] = $row;
}
print $data;

这是表格:

$json = $data;
$json_decoded = json_decode($json);
foreach($json_decoded as $data12){
    echo '<tr>';
    echo '<td>'.$data12[satker].'</td>';
    echo '<td>'.$data12[shift_description].'</td>';
    echo '<td>'.$data12[nip].'</td>';
    echo '</tr>';

}

2 个答案:

答案 0 :(得分:0)

不确定我是否完全理解你的问题。 但是,让我尝试帮助您。我认为您的问题已经解决

$json = $data;
$json_decoded = json_decode($json);
这里不需要

json_decode(),您要分配给$ json的$ data是一个类型数组。使用您共享的代码,我看不到需要Json,您应该直接遍历$ data。

希望有帮助。

答案 1 :(得分:0)

您不需要$json_decode。只需遍历数组$data

删除:

$json = $data;
$json_decoded = json_decode($json);

并修改foreach循环,添加 table标记。还将单个qoutes 添加到数组索引:

   echo '<table>';
    foreach($data as $data12){
                  echo '<tr>';
                echo '<td>'.$data12['satker'].'</td>';
                echo '<td>'.$data12['shift_description'].'</td>';
                echo '<td>'.$data12['nip'].'</td>';
              echo '</tr>';

        }

echo '</table>';