Bonjour,
Pour compter le nombre de mail, j'utilise ce scripte :
Le problème est que pendant que ce script est exécuté, le serveur php est monopolisé (peut durer pendant plus de 5 seconde). Et je voudrais que des que je fait autre chose, je puise arrêter ce script, pour laisser libre le serveur php.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 function mail() { var xhr; if (window.XMLHttpRequest) xhr = new XMLHttpRequest(); else if (window.ActiveXObject) xhr = new ActiveXObject('Microsoft.XMLHTTP'); else { alert('JavaScript : votre navigateur ne supporte pas les objets XMLHttpRequest...'); return; } loading(); xhr.open('POST','mail/ajax/mail.php',true); xhr.onreadystatechange = function() { if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) { var xml = xhr.responseXML; var number = xml.getElementsByTagName("mail").length; var mails = ''; for(i = 0; i < number; i++) { var mail = xml.getElementsByTagName('mail').item(i).childNodes[0]; mail = mail.firstChild.data; mails = mails + mail + '<br />'; if (i == 2) { break; } } document.getElementById('nbmail').innerHTML = number ; document.getElementById('mails').innerHTML = mails; } } xhr.setRequestHeader('Content-type','application/x-www-form-urlencoded'); xhr.send(null); } function loading() { document.getElementById('nbmail').innerHTML = "<img alt=\"Loader\" src=\"themes/default/images/loader.gif\"/>" ; document.getElementById('mails').innerHTML = "Vérification des nouveaux messages"; }
Comment je pourrais faire ?
Merci d'avance pour votre réponse.
Partager