Значения JSON в таблицу HTML - PullRequest
4 голосов
/ 25 апреля 2011

У меня есть table.html , data.php и json.csv в одной папке.

data.php делает fopen("json.csv","r") для чтения из json.csv .

Как я могу отобразить объекты JSON в виде таблицы в table.html ?

<html>
<head>
<script type="text/javascript" src="jquery.js">
function display(){
 $.post('data.php',function(data){
 $("#txtJSON").html(data); 
 });
  }

  </script>
  </head>
  <body onload="display()">
  <table id="#jobtable">
  <input type="text" id="txtJSON" />
  </table>
  </body>
  </html>

Ответы [ 3 ]

9 голосов
/ 25 апреля 2011

Вам просто нужно json_decode и некоторая итерация

http://php.net/manual/en/function.json-decode.php

Я покажу вам очень упрощенный способ сделать PHP. Вы ничего не говорите о JSON, поэтому я предполагаю, что он плоский (не вложенный). Я думаю, что вы могли бы также изменить вещи на стороне клиента. Сделайте txtJSON пустым div, который будет заполнен выводом из PHP.

$file = $fopen("json.csv", 'r');
$fileText = fread($file, filesize($file));
$arr = json_decode($fileText, true); //i prefer associative array in this context

echo "<table>";
foreach($arr as $k=>$v)
    echo "<tr><td>$k</td><td>$v</td></tr>";
echo "</table>";

Если ваш JSON не плоский и простой, как бы вы хотели, чтобы получилась итоговая таблица?

2 голосов
/ 26 мая 2015

Здесь я взял данные json в переменную $ json, а затем использую цикл foreach для создания таблицы из данных json.

foreach ($data as $key => $jsons) {
 $table ='<table class="'.$jsons['class'].'" border="1">';
 foreach ($jsons as $rkey => $rvalue) {
    if($rkey=='head')
    {
        $table.='<tr>';
        foreach($rvalue as $rvv)
        {
            $table.='<th>'.$rvv.'</th>';
        }
        $table.='</tr>';
    }else
    if($rkey=='rows')
    {
        foreach($rvalue as $rvv)
        {
            $table.='<tr>';
            foreach($rvv as $rv)
            {
                $table.='<td>'.$rv.'</td>';
            }
            $table.='</tr>';
        }
    }
 }
}
echo $table;
?>

Я взял ссылку от http://www.tutsway.com/create-table-from-json.php

0 голосов
/ 16 июля 2012

Вы можете использовать эту библиотеку для преобразования Json в стандартную таблицу HTML: Json-To-Html-Table

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...