2 回答
TA贡献1799条经验 获得超8个赞
notifyProjectManager.php这应该向$_GET变量中包含您需要的值发送请求。您可以更改var paramsKeys以添加更多键。
// Calcul de temps du chronomètre (en secondes)
function envoyerAudio(minutes, heures, secondes) {
minAlarm = parseInt(minutes);
hrAlarm = parseInt(heures);
secAlarm = parseInt(secondes);
flagAudio = true;
if (hrAlarm != 00) {
minAlarm = minAlarm + (hrAlarm * 60);
}
if (minAlarm != 00) {
secAlarm = secAlarm + (minAlarm * 60);
}
return secAlarm;
}
var resultat = ((tempsRestant * 60) - (envoyerAudio(min, hr, sec)));
// Gestion des alarmes
if (resultat == 3600) {
audio.play();
}
if (resultat < 3600) {
if (!!window.notifyProjectManager) {
var params = [];
var paramsKeys = ['user', 'temps', 'iduser', 'affichage', 'chargeProjet'];
for (var i in paramsKeys) {
var key = paramsKeys[i];
params.push(key + '=' + getByNameValue(key));
}
get('notifyProjectManager.php?' + params.join('&'), function () {
window.notifyProjectManager = true;
});
// Permet, lorsque flagAlert="true", d'envoyer un mail au chargé de projet
document.getElementById("flagAlert").innerHTML = "true";
}
} else {
document.getElementById("flagAlert").innerHTML = "false";
}
// get request (working in all browsers)
function get(url, callback) {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
if (xhr.status === 200) {
callback(xhr.responseText);
}
}
};
xhr.open('GET', url);
xhr.send(null);
}
function getByNameValue(name) {
return encodeURIComponent(document.getElementsByName(name)[0].value);
}
if (resultat == 0) {
audio.play();
}
if (resultat == -3000) {
audio.play();
alert("Arrêtez la tâche en cours !!");
}
TA贡献1833条经验 获得超4个赞
我看不到你的超时/间隔函数在哪里,所以我不能更具体......但基本上你可以在计时器到期时在该函数中设置一个标志,然后在相同或下一个勾号。
现在,如果您需要发送电子邮件。在 X 时间点,无论浏览器是否打开,您都可以在服务器上使用 Cron。
添加回答
举报