html頁面basic_sse.htmljavascript
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>數據推送</title> </head> <body> <pre id="result"> Initializing... </pre> <script type="text/javascript"> if(typeof(EventSource)!=="undefined") { var source = new EventSource("/sjts/index.php"); source.onmessage=function(event){ document.getElementById("result").innerHTML=event.data + "<br />"; }; } else { document.getElementById("result").innerHTML="Sorry, your browser does not support server-sent events..."; } </script> </body> </html>
php頁面index.phpphp
<?php header('Content-Type:text/event-stream');//通知瀏覽器開啓事件推送功能 header('Cache-Control:no-cache');//告訴瀏覽器當前頁面不進行緩存 //$time = date('r'); //echo "data: The server time is: {$time}\n\n"; $mysqli = new MySQLi('localhost','root','','test'); $sql = 'select ac_id from article_class where ac_name="11";'; $result = $mysqli->query($sql); while($row = $result->fetch_assoc()){ $time = $row['ac_id']; echo "data: The server time is: {$time}\n\n"; } ob_flush();//刷新 flush();//刷新 ?>
總結:經過改變數據庫ac_id自動,前端不刷新便可實施改變數據html