rafraichissement sans recharger

Invité
Invité n'ayant pas de compte PHPfrance

16 mars 2005, 16:03

bonjour,

je suis en train de créer un chat en php et en fait j'ai un include dans un div et en dessous mon formulaire me permettant de poster mes messages.

j'ai commencé à créer un script de maj de page sans la recharger ce qui fonctionne des que je clique sur go.

voici la page:

<script>
function news()
{
var xhr_object = null;

if(window.ActiveXObject) // Internet Explorer
   xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else if(window.XMLHttpRequest) // Firefox
   xhr_object = new XMLHttpRequest();
else { // XMLHttpRequest non supporté par le navigateur
   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
   return;
}

xhr_object.open("POST", "test2.php", true);

xhr_object.onreadystatechange = function() {
   if(xhr_object.readyState == 4) document.forsec.secb.value=" "+xhr_object.responseText;
   
   
   
   
   
}

xhr_object.send(null);
setTimeout("news()", 1000);
}

</script>

<DIV><? include "mes messages.php"; ?></DIV>

<form name="forsec">
  <div align="center">
  <textarea name="secb" cols="50" rows="15" ></textarea>
  <input type="button" class="champs" onclick="news()" value="Go">
  
  </div>
</form>
mais ce que je voudrais c'est mettre à jour le fichier inclus dans mon div des que j'ouvre la page et toutes les secondes et en même temps poster mes messages sans recharger la page également.

est ce que quelq'un pourrais m'aider à modifier mon script de départ pour que mes deux fonctions fonctionne correctement ?

Eléphanteau du PHP | 27 Messages

16 mars 2005, 21:58

regarde du coté de la fonction innerHTML

Invité
Invité n'ayant pas de compte PHPfrance

18 mars 2005, 14:48

ok j'ai trouvé quelques infos là dessus et j'ai donc créé mon script comme ceci:

Bonjour,

j'essaie d'envoyer un formulaire sans recharger la page mais rien ne fonctionne, je doit avoir une erreur dans mon javascrit mais je ne vois pas ou.

voici mon formulaire:
<FORM name="poster" action="" method="POST" onsubmit="ajoute_mess()">
<TR><TD width="350" height="100" bgcolor="#F7F7F7">
<TABLE width="350" height="100" align="center" cellpadding="1" cellspacing="0" border="0" bgcolor="#000000">
<TR><TD>
<TABLE width="350" height="100" align="center" cellpadding="0" cellspacing="0" border="0" bgcolor="#F7F7F7">
<TR><TD>
&nbsp;&nbsp;<textarea cols="30" rows="6" class="form" name="message"></textarea>
<INPUT type="hidden" name="dest" value="<? echo $_GET['dest']; ?>">
&nbsp;&nbsp;<INPUT type="button" name="message" value="envoyer">
</TD></TR>
</TABLE>
</TD></TR>
</TABLE>
</TD></TR>
</FORM>



et mon javascript:
<script language='javascript'>
function ajoute_mess() {
var xhr_object = null;   

if(window.XMLHttpRequest)
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject)
xhr_object = new ActiveXObject('Microsoft.XMLHTTP');
else {
alert('Votre navigateur ne supporte pas les objets XMLHTTPRequest...');
return;
}

xhr_object.open('POST', 'ajoute_mess.php', true);



xhr_object.onreadystatechange = function() {
if(xhr_object.readyState == 4) {
var data = 'message=' + document.poster.message.value + '&dest=' + document.poster.dest.value;
}
}

xhr_object.send(data);


}
</script>


mais impossible d'envoyer le formulaire, rien ne fonctionne

Eléphanteau du PHP | 27 Messages

18 mars 2005, 18:45

Mais je crois que pour envoyer un forumulaire c'est obligatoire de changer de page, enfin de recharger pour envoyer les donnés, sinon tu peus envoyer les donnés par pop-up et une fois que les donnés sont envoyé tu ferme le pop-up.

Invité
Invité n'ayant pas de compte PHPfrance

19 mars 2005, 03:21

non cela n'est pas obligatoire.

avec la fonction XMLHttpRequest il est tout à fais possible d'actualiser sans recharger.

le souci que je rencontre actuellement avec le script cité dans mon precedent post, le fait de cliquer sur le bouton envoyer ne provoque rien du tout c'est ce que je n'arrive pas à comprendre.

je doit donc avoir une erreur à quelque part mais ou...

Eléphanteau du PHP | 27 Messages

19 mars 2005, 09:43

Regarde cette page: http://qwix.media-box.net/index.php/200 ... questEtPhp

C'est très interessant et ça m'a permit de découvrir cette fonction :P

Mammouth du PHP | 859 Messages

02 avr. 2005, 15:35

Tu me sembles très inutile comme garçon kikol :evil: