Hum, ça ne semble pas fonctionner. Pour faciliter, je mets le code, je me suis peut être trompé quelque part (je ne maitrise pas encore le javascript)
donc le fichier html basique censé afficher l'évolution des ressources avec 2 balises div:
Là, je ne pense pas qu'il y ait de souci
Ensuite le fichier php:
donc le fichier html basique censé afficher l'évolution des ressources avec 2 balises div:
Code :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Augmentation des ressources sans actualiser</title>
<script type="text/javascript" src="ajax.js">
eval(xhr_object.responseText);
</script>
</head>
<body onload="window.setTimeout('resRequest()',5000)">
<div id="resId1">
</div>
<div id="resId2">
</div>
<br />
</body>
</html>
Là, je ne pense pas qu'il y ait de souci
Ensuite le fichier php:
Code PHP :
<?php
mysql_connect('localhost', 'root', ''); // On se connecter à la BDD
mysql_select_db('test'); // On sélectionne la BDD ressources
$res1 = mysql_query('SELECT * FROM `ressources` WHERE name="petrole"'); // On fait une requete du pétrole
$rows1 = mysql_fetch_array($res1); // On fait un array de la requete
$newvaleur = $rows1['valeur'] + 10;
$newcout = $rows1['cout'] + 10;
mysql_query('UPDATE ressources SET valeur="'.$newvaleur.'", cout="'.$newcout."' WHERE name="petrole"');
echo "document.getElementById('resId1').innerHTML=".$newvaleur['quantite'];
echo "document.getElementById('resId2').innerHTML=".$newpetrole['quantite'];
?>
et finalement le fichier javascript:
Code :
/** On verifie si le navigateur accepte le XMLHttpRequest **/
if(window.XMLHttpRequest) // Firefox
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // Internet Explorer
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
return;
}
xhr_object.open("GET", "multiple.php", true)
xhr_object.onreadystatechange = function() { // Si le readyState change alors on execute ce qui est en bas
if(xhr_object.readyState == 4 && xhr_object.status == 200)
{
//document.getElementById("resId1").innerHTML = xhr_object.responseText;
}
}
xhr_object.send(null); // On envoie rien car on utilise pas la méthode POST
window.setTimeout('resRequest()',5000); // On appelle cette fonction tout es les 1000millisecondes qui vaut 1secondes.
}