показать данные из json

Пытаюсь показать таблицу из 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>';

}

person AbdulMUTIMF    schedule 11.12.2018    source источник


Ответы (2)


Вам не нужен цикл $json_decode. Просто пройдитесь по массиву $data.

удалить :

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

и измените цикл foreach, добавив тег table. Также добавьте одиночные кавычки в индексы вашего массива:

   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>';
person ktaro    schedule 11.12.2018
comment
я понял ‹table›‹tr›‹td›YAYASAN‹/td›‹td›Desc‹/td›‹td›001.115.14.04.2014‹/td›‹/tr›‹/table› как показать это на лицевой стороне конец? - person AbdulMUTIMF; 11.12.2018
comment
Теги тоже отображаются в браузере? Это фактическое значение в вашей базе данных? - person ktaro; 11.12.2018
comment
Я думаю, вы должны включить полный формат hml. <!DOCTYPE><html><head></head><body></body></html>. - person ktaro; 11.12.2018
comment
значение является правильным значением из базы данных, я хочу отобразить запись в виде таблицы в представлении - person AbdulMUTIMF; 11.12.2018
comment
Если ваши html-теги отображаются в виде текста, вы можете задать этот вопрос: (stackoverflow.com/questions/46107855/) - person ktaro; 11.12.2018

Не уверен, что полностью понимаю ваш вопрос. Но позвольте мне попытаться вам помочь. Я думаю, что ваша проблема вокруг

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

json_decode() здесь не нужен, $data, которые вы присваиваете $json, представляет собой массив типов. С кодом, которым вы поделились, я не вижу необходимости в Json, вы должны напрямую перебирать свои $data.

Надеюсь, это поможет.

person clobee    schedule 11.12.2018
comment
Я не нашел записи в виде таблицы, думаю, что-то не так с моим кодом - person AbdulMUTIMF; 11.12.2018