[AJAX] Rafraîchissement Auto Requête SQL par AJAX
Bonjour à tous, j'ai ici un script de PHP/Ajax qui rafraîchit une variable PHP grâce à Ajax par le rafraîchissement d'une requête et celle ci fonctionne mais le problème est que ça rame grave quand je lance ce code sur le serveur. Donc est ce que j'ai fait une erreur qui demande trop de ressources ?
Mon HTML :
Code:
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
| <html>
<head>
<title>Exemple</title>
<script type="text/javascript">
function ajax(){
var xhr=null;
if (window.XMLHttpRequest) {
xhr = new XMLHttpRequest();
}
else if (window.ActiveXObject){
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
//on définit l'appel de la fonction au retour serveur
xhr.onreadystatechange = function() { affichage(xhr); };
//on appelle le fichier reponse.txt
xhr.open("GET", "autre.php", true);
xhr.send(null);
}
function affichage(xhr){
var docXML= xhr.responseXML;
var items = docXML.getElementsByTagName("donnee")
//on fait juste une boucle sur chaque element "donnee" trouvé
for (i=0;i<items.length;i++){
document.getElementById("bip").innerHTML = items.item(i).firstChild.data;
var timer=setInterval(ajax, 5000);
}
}
</script>
</head>
<body onload="javascript:ajax();">
<div id="bip"></div>
</body>
</html> |
Puis mon appel requête (autre.php) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| <?php
header('Content-Type: text/xml');
echo "< ?xml version=\"1.0\"? >\n"; // L'espace est pour la coloration syntaxique
echo "<exemple>\n";
$user="####";
$host="####";
$password="####";
$database="####";
$v = 0;
$cxnvisit = mysqli_connect($host, $user, $password, $database) or die ("Etape 1 : Connexion impossible au serveur");
$sqlvisit = "SELECT * FROM visite WHERE visiteur='$var1' and visiter='$var2'";
$resultvisit = mysqli_query($cxnvisit,$sqlvisit) or die ("Requete en echec region");
while($row = mysqli_fetch_row($resultvisit)) {
$idvisite = $row[0];
$v = $v + 1;
}
echo "<donnee>" . $v . "</donnee>\n";
echo "</exemple>\n";
?> |
Ai-je fais une erreur pour que cela rame autant ?
Merci par avance