所以我试图找出这段JavaScript。我想要做的是使用查询来显示我的数据库中的通知量。所以,假设在我的数据库中有5个通知可以向这段代码添加一个查询,所以它会显示如下:hello你有5条看不见的消息吗?我现在有几个小时的搜索,它只是让我疯了。
提前致谢
<html>
<head>
<script language="javascript">
function notifyMe() {
// Let's check if the browser supports notifications
if (!("Notification" in window)) {
alert("This browser does not support desktop notification");
}
// Let's check if the user is okay to get some notification
else if (Notification.permission === "granted") {
// If it's okay let's create a notification
var notification = new Notification("Hi there!");
}
// Otherwise, we need to ask the user for permission
else if (Notification.permission !== 'denied') {
Notification.requestPermission(function (permission) {
// If the user is okay, let's create a notification
if (permission === "granted") {
var notification = new Notification("Hi there!");
}
});
}
// At last, if the user already denied any notification, and you
// want to be respectful there is no need to bother them any more.
}
</script>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<div><button onclick="notifyMe()">Meldingen ophalen</button></div>
</body>
</html>
答案 0 :(得分:1)
要访问您的数据库,您需要PHP。
如果你想在网页上执行PHP而不重新加载它,你必须使用&#34; xmlhttprequest&#34;正如@Grimbode所说。
这是一种通过Javascript从PHP函数获取PHP响应(在您的情况下,访问您的数据库)的方法。
为了简化操作,您应该查看$.post method from jQuery。
祝你的研究好运!
答案 1 :(得分:0)
这是一个脚本,每分钟调用一次,检查是否有新的通知。
您的回复文字完全取决于您。你可以发回一个号码,你可以发回一个包含所有信息等的json。
setInterval(function () {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
new Notification("You have " + xmlhttp.responseText + " notifications!");
}
}
xmlhttp.open("GET", "php_ajax_handler_url_here", true);
xmlhttp.send();
}, 60000);
这要求你拥有php。每次调用ajax请求时,处理该请求的php文件都必须访问db并发回正确的响应。