我有一个简单的服务器发送事件设置我试图将显示作为表格。目前我有SSE php页面从MySQL表中提取数据并将数据作为Json数组发送到实时页面。我怎样才能把Json数组放到一个html表中,而不是将数组作为帖子发送回来并使页面刷新"?
这是我目前的代码
SSE.php
//get MySQL data
$new_data = getVar();
//Create Array
$data_array = array();
//add data to array
while($row = $new_data->fetch_assoc()){
$data_array[] = $row;
$out = array_values($data_array);
$new_out = json_encode($out);
}
//echo the array to html page
echo "data: $new_out \n\n }'";
的index.html
<script type="text/javascript">
//check for browser support
if(typeof(EventSource)!=="undefined") {
//create an object, passing it the name and location of the server side script
var eSource = new EventSource("send_sse.php");
//detect message receipt
eSource.onmessage = function(event) {
//write the received data to the page
//document.getElementById("serverData").innerHTML = event.data;
};
其中serverData是当前显示数组的div
我试图回复数据:多次或回显html标记,但我无法解决php运行时错误
感谢
答案 0 :(得分:0)
您可能希望向PHP脚本发出AJAX请求。这将允许数据库表中的数据填充页面而不刷新。查看this W3Schools example。
您可以使用jQuery's AJAX functions来简化用户定义的JavaScript(尽管您还必须将jQuery加载到页面上)。