我有一个基本表,从json文件中读取数据以填充行。此填充由第三方应用程序更新,我需要自动添加新行,而无需查看器刷新页面。大多数情况下,我正在寻找教程或一些如何实现这一目标。提前感谢任何建议!
$strJsonFileContents = file_get_contents("./includes/dispatch.json");
$mdt = json_decode($strJsonFileContents, true);
?>
<div id="callboard">
<div align="center">
Call ID: <input type="text" id="AlertId" class="mdt" size="10" readonly />
Type: <input type="text" id="AlertType" class="mdt" size="10" readonly />
Location: <input type="text" id="AlertLocation" class="mdt" size="25" readonly />
Status: <input type="text" id="AlertStatus" class="mdt" size="10" readonly />
Units: <input type="text" id="AlertUnits" class="mdt" size="20" readonly /><hr><span id='ct' ></span><hr>
</div>
<hr>
<h3>Active Calls</h3>
<table id="mdt-table">
<tr onclick="javascript:showRow(this);">
<th>Call ID</th>
<th>Type</th>
<th>Caller</th>
<th>Location</th>
<th>Details</th>
<th>Status</th>
<th colspan="2">Units</th>
<th>Other Info</th></tr>
<?php
$arrlength = count($mdt);
for ($x = 0; $x < $arrlength; $x++)
{
if ($mdt[$x][AlertType]=='10-13')
{
echo "<tr class=\"blinking\" onclick=\"javascript:showRow(this);\">";
}
else { echo "<tr onclick=\"javascript:showRow(this);\">";
}
echo "<td name=\"AlertId\">". $mdt[$x][AlertID]; echo "</td>";
echo "<td name=\"AlertType\">". $mdt[$x][AlertType]; echo "</td>";
echo "<td name=\"AlertCaller\">". $mdt[$x][AlertCaller]; echo "</td>";
echo "<td name=\"AlertLocation\">". $mdt[$x][AlertLocation]; echo "</td>";
echo "<td name=\"AlertMessage\">". $mdt[$x][AlertMessage]; echo "</td>";
echo "<td name=\"AlertStatus\">". $mdt[$x][AlertStatus]; echo "</td>";
echo "<td name=\"AlertUnits\" colspan=\"2\">". $mdt[$x][AlertUnits]; echo "</td>";
echo "<td name=\"AlertOther\">". $mdt[$x][AlertOther]; echo "</td>";
echo "</tr>";
}
?>
</table>
当你获取JSON数据,特别是字符串时,你可以使用PHP函数json_decode($raw_json_string)
,它将返回一个关联数组(如果是js对象)或只是一个常规数组(js数组)
如果你想获取javascript的JSON数据,你可以使用php函数
json_encode($array);
将返回一个准备在Javascript中使用的字符串作为对象变量。
所以如果你想在PHP中使用JSON对象....
PHP:
`
$raw_json_string = {data: 2, data2:"hello world", data3:[1,2,3,4],};
$array = json_decode($raw_json_string);
$array['data'] == 2; // true
$array['data2'] == "hello world"; // true
$array['data3'] == [1,2,3,4]; // true`
然后你可以使用这个数组并循环它来创建你的HTML表行。
希望这可以帮助。