Bonjour, je n'arrive pas a executer en automatique le script ajax, je vous met le code qui fonctionne avec un bouton , mais pas toutes les 4 secondes.
si vous pouvez m'aider a voir qu'est ce qui ne va pas , merci d'avance
<!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>
<script language="Javascript"type="text/JavaScript">
var val1t;
// Requette AJAX
function makeRequest(url,id_ecrire){
var http_request = false;
//créer une instance (un objet) de la classe désirée fonctionnant sur plusieurs navigateurs
if (window.XMLHttpRequest) { // Mozilla, Safari,...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/xml');//un appel de fonction supplémentaire pour écraser l'en-tête envoyé par le serveur, juste au cas où il ne s'agit pas de text/xml, pour certaines versions de navigateurs Mozilla
}
} else if (window.ActiveXObject) { // IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) {
alert('Abandon :( Impossible de créer une instance XMLHTTP');
return false;
}
http_request.onreadystatechange = function() { traitementReponse(http_request,id_ecrire); } //affectation fonction appelée qd on recevra la reponse
// lancement de la requete
http_request.open('POST', url, true);
//changer le type MIME de la requête pour envoyer des données avec la méthode POST , !!!! cette ligne doit etre absolument apres http_request.open('POST'....
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
data="292";
http_request.send(data);
}
function traitementReponse(http_request,id_ecrire) {
var affich="";
if (http_request.readyState == 4) {
if (http_request.status == 200) {
// cas avec reponse de PHP en mode texte:
//chargement des elements reçus dans la liste
var affich_list=http_request.responseText;
obj = document.getElementById(id_ecrire);
obj.innerHTML = affich_list;
var reg=new RegExp("[z]+", "g");
var tableau=affich_list.split(reg);
for (var i=0; i<tableau.length; i++) {
val1t=tableau[2]
}
}
else {
alert('Un problème est survenu avec la requête.');
}
}
}
</script>
<script src="raphael.2.1.0.min.js"></script>
<script src="justgage.1.0.1.min.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body >
<input type="button" name="toto" value="279" onclick="makeRequest('rep_PhpAjax.php','id_list2')"/>
<div id="id_list2" align="center">
<!-- ici sera charge la reponse mode texte de PHP à la request AJAX -->
</div>
<div id="bonjour">
<div id="val1t" style="width:200px ; height:160px ; position:relative ; float:left" ></div>
</body>
<script>
window.onload = function(){
val1t=0;
var g = new JustGage({
id: "val1t",
value: Math.round(val1t*100)/100 ,
min: 0,
max: 15,
title: "valeur 1",
label : "carottes",
levelColors: [
"#ff0000",
"#ffff33",
"#33ff33"
]
});
setInterval(function() {
g.refresh(Math.round(val1t*100)/100);
}, 500);
};
</script>
</html>
merci d'avance pour votre
j'ai mis des
settimeout("makeRequest(url,id_ecrire),4000)"
un peu partout mais rien ne fait
je pense que j'ai loupé quelque chose
--