如何实现当数据库新增数据后,前台实时发出提示音?和横幅弹窗提示:有新新增数据,请查看!
目前有如下ajax,完全不对,后台php json更不成功。
<script type='text/javascript' src='js/jquery.min.js'></script>
<script type='text/javascript'>
//新订单提醒
var player;
var lastid = 0;
var isgeting = false;
var neednotice = true
$(function(){
player = document.getElementById("noticeplayer");
setInterval(function(){
if(!neednotice || isgeting){return;}
isgeting=true;
jQuery.ajax({
url:'notice.php'
//此处如何写?
dataType:"json",
success:function(data){
if(data.flag=='1'){
if(lastid!=0 && data.data>lastid){
player.play();
}
lastid = data.data;
}
},
error:function(XMLHttpRequest, textStatus, errorThrown){},
complete: function(XMLHttpRequest, textStatus) {isgeting=false;}
});
},3000);
});
function setnotice(){
neednotice = document.getElementById("notice").checked;
}
</script>
<audio src="source/1.mp3" id="noticeplayer"></audio>
<style>
后台php数据:
```php
<?php
try {
$pdo = new PDO('mysql:host=127.0.0.1;dbname=demo;port=3306', 'root', 'root');
} catch (PDOException $e) {
die('connet error :' . $e->getMessage());
};
$pdo->exec('set names utf8');
$res = $pdo->query("SELECT * FROM user limit 0,1")->fetch(PDO::FETCH_ASSOC);
//如果无则返回空
if(empty($res)) {
echo 0;
} else {
echo json_encode($res);
}
?>
```