Rechargement d'objet "AJAX"

WRInaute discret
Bonjour !
Voila, je commence tout juste a programmer en AJAX ...
et voila mon probleme ...
Je voudrai que chaque 2 secondes, la page se rafraichisse dans un "textarea" ...
Coté reload => pas de soucis... je passe par setTimeout ...
Mais apres, le probleme, c'est que "AJAX" ne prend pas en compte les modifications faites sur le fichier "ajax.php".
J'utilise peut etre une mauvaise méthode ??
Voici le code pour afficher dans le cadre nommé "cadre" du formulaire nommé "formulaire" le contenu du fichier ajax.php ...
Si vous savez pourquoi la page ne se rafraichit pas ...


var xhr_object = null;

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;
}
fichier = "ajax.php";
xhr_object.open("GET", fichier, true);

xhr_object.onreadystatechange = function() {
if(xhr_object.readyState > 3)
{
alert(xhr_object.responseText);
document.formulaire.cadre.value= xhr_object.responseText;
}
}

xhr_object.send(null);

En esperant que vous ayez la réponse ...
 
WRInaute discret
hello

je comprends pas tu dis "Coté reload => pas de soucis" puis "Si vous savez pourquoi la page ne se rafraichit pas "

AJAX ca se passe coté client c.a.d. dans ton navigateur (pas sur le serveur)

pour enregistrer le contenu du textarea dans un fichier, c'est PHP qui doit faire ca

donc tu valides ton formulaire, PHP recupere les infos et ecrit le fichier puis AJAX s'ocuppe du reload

je te parle meme pas des aspects "securité" d'editer une page PHP dans un formulaire !!

++

ju²
 
WRInaute occasionnel
Tu dois avoir un pb de cache du coté du navigateur.
Essayes :
fichier = "ajax.php?d=" + (new Date()).getTime();
ca devrait marcher
 
WRInaute discret
:lol: :lol: :lol:
Tu l'a fait exprès ZoRRo75 ?
Non mais juste que si je me lance dans la programmation en AJAX, c'est que je sais a peu pres qu'est ce qu'il se passe ...
Et niveau PHp, je ne pense pas avoir vraiment de probleme a coder en php :lol: :lol:

Non mais dans tous les cas ... mille mercis madx !!!
C'était exactement mon probleme ... je pensais que ca venait directement de mon script mais apparemment ... non :lol: :lol:
Ca marche a merveille maintenant :lol:

Encore merci :wink: et merci tout de meme à toi ZoRRo75 pour ton aide :wink:
 
WRInaute occasionnel
De rien benjiman.
Souvent le pb d'ajax enfin du XMLHttpRequest c'est le cache.
Déja faut se tapper la différence entre IE et Mozilla et faut aussi penser au cache.
Le pire c'est si tu dois jouer avec les évenements claviers et mixer tout ca.
Alallalala pas simple la vie de webmaster.
 
WRInaute impliqué
Code:
header("Pragma: no-cache") ;

Placé dans ton script PHP, ca peut peut-être résoudre ton problème sans passer des arguments à la page.
 
WRInaute occasionnel
Bonjour,

Perso, j'ai toujours un problème sous IE7 (j'ai pas encore tester avec les autres IE) mais ça marche parfaitement sur firefox...

j'ai également essayé les solutions décrite chez ccm :

-http://www.commentcamarche.net/forum/affich-2358378-ajax-probleme-de-compatibilite-ie

mais rien n'y fait, il ne désire pas se débarrasser du cache une fois qu'il a chargé la première fois

j'ai également essayé avec la balise meta directement dans le html...

des idées? j'ai peut-être pas compris un truc

merci d'avance

---

edition : il y avait bien quelque chose que je n'avais pas compris.... Il faut le mettre sur chaque page qu'on appelle! N'oubliez pas le headers_sent() et désolé du dérangement.
 
Discussions similaires
Haut