Rafraichir une div

Bonjour,

Je suis entrain de créer un mini chat en php et ne connaissant pas dutout ajax et le JS, je voudrais que quelqu'un m'aide a mettre mon div tchat en rafraichissement toute les 1secondes.

Comment faire svp ?
Aidez moi.

Voici mon code de mon div.

 <div id="chat_index_bdd">
      <?php
		// Affichage de chaque message (toutes les données sont protégées par htmlspecialchars)
		while ($donnees = $reponse->fetch()){ ?>
      <p> <span class="heure"> <?php echo htmlspecialchars($donnees['date_creation']) ?> </span> <strong title="<?php echo htmlspecialchars($donnees['age']), htmlspecialchars($donnees['sexe'])?> " class="pseudo_chat">
        <?php if($donnees['sexe'] == 'F') 			 //si c'est une fille
								   			echo '<span style="color:#E860CD">'; //je veux que le pseudo soit de la couleur rose
										 else 
										 	echo '<span style="color:blue">';    //sinon je veux qu'il soit bleue pour les hommes.
											echo htmlspecialchars($donnees['pseudo'])?>
        </span></strong> : <span class="message_chat"> <?php echo htmlspecialchars($donnees['message'])?> </span> </p>
      <?php
		}$reponse->closeCursor();
		
		?>
    </div>




Merci de bien vouloir m'aider.
Cdt

13 réponses

  1. J'ai eu tout simplement du mal moi aussi pour faire mon Tchat mais j'ai finit par y arriver.
    Créé une nouvelle page qui se nomme recup.php et tu insères ton code qui te récupère les données de ta BDD. Ensuite l'ajax récupèrera ces infos et avec un settimeout tu rafraichis le tout:

    Function refresh_div() 
    { 
       aleatoire = Math.random(); 
       var xhr_object = null; 
       if(window.XMLHttpRequest) 
          { // Firefox 
             xhr_object = new XMLHttpRequest(); 
          } 
       else if(window.ActiveXObject) 
          { // Internet Explorer 
             xhr_object = new ActiveXObject('Microsoft.XMLHTTP'); 
          } 
       var method = 'GET'; 
       var filename = 'recup.php?a='+escape(aleatoire); 
       xhr_object.open(method, filename, true); 
       xhr_object.onreadystatechange = function() 
          { 
             if(xhr_object.readyState == 4) 
             { 
                var tmp = xhr_object.responseText; 
                document.getElementById('Tchat').innerHTML = tmp; 
             } 
          } 
       xhr_object.send(); 
       setTimeout('refresh_div()', 1000); 
    } 
    


    Dans ton chat :
    <body onload='refresh_div();'>
    <div id="Tchat"></div>
    </body>
    =)
    2
    1. commence par te renseigner sur la fonction jquery
      $.ajax();

      ensuite sur le setInterval(); de javascript

      je te rassure que c'est maximum 15 lignes de code

      dans le forum on ne donne pas les codes
      mais on essaie d'améliorer ce qu'on propose

      courage
      0
      1. Franchement j'ai cherché, j'ai essayé de comprendre, mais il faut que je me tape le cour sur ajax en entier ou js et la j'ai pas la patiente pour commencer maintenant. Je compte m'y mettre mais pas maintenant, dans quelques mois.

        Faut que je finisse mon site, je veux juste un coup de mains pour ce rafraichissement auto.

        Quelqu'un qui accepte de m'aider sur skype, mail, ou autre ca serais sympa.
        Merci.
        0
        1. c'est pas si compliqué que ça:

          <html>
          <head>
          <script type="text/javascript">
          /////// fonctions_Ajax ///
          //fonction de base de creation de la request ------------------------------------------
          function getXMLHttpRequest(){
          	var XHR = false;
          		//créer une instance (un objet) de la classe désirée fonctionnant sur plusieurs navigateurs
                  if (window.XMLHttpRequest) { // Mozilla, Safari,...
                      XHR = new XMLHttpRequest();
                      if (XHR.overrideMimeType) {
                          XHR.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 {
                          XHR = new ActiveXObject("Msxml2.XMLHTTP");
                      } catch (e) {
                          try {
                              XHR = new ActiveXObject("Microsoft.XMLHTTP");
                          } catch (e) {}
                      }
                  }
          
                  if (!XHR) {
                      alert('Abandon : Impossible de créer une instance XMLHTTP');
                      return false;
                  }
          	return XHR;  
          }
          /////// --------------------------------------------------------------------------
          //fonction lançant la requette Ajax
          function request() {
          	var url='scriptPHPreponseAjax.php';
          		//création requette
          		var XHR = getXMLHttpRequest();
          		 //on definit ce qu'on va faire lorsqu'on recevra la réponse
          		XHR.onreadystatechange = function (){traitement_reponse(XHR);} 	
          		XHR.open('POST', url, true);		
          		XHR.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');		
          		XHR.send(null);
          		//appel toutes les secondes
          		setTimeout("request()",1000);	
          	
          }
          //fonction traitement_reponse à la requette Ajax
          function traitement_reponse(XHR){
          	if(XHR.readyState == 4 ){
          		if(XHR.status == 200) {
          			// cas avec reponse de PHP en mode texte				
          			var reponse=XHR.responseText;				
          			//affichage
          			document.getElementById("chat_index_bdd").innerHTML = reponse;
          				
          		}
          	}
          }
          </script>
          </head>
          <body>
          ......
          <div id="chat_index_bdd">
                <?php
          		// Affichage de chaque message (toutes les données sont protégées par htmlspecialchars)
          		while ($donnees = $reponse->fetch()){ ?>
                <p> <span class="heure"> <?php echo htmlspecialchars($donnees['date_creation']) ?> </span> <strong title="<?php echo htmlspecialchars($donnees['age']), htmlspecialchars($donnees['sexe'])?> " class="pseudo_chat">
                  <?php if($donnees['sexe'] == 'F') 			 //si c'est une fille
          								   			echo '<span style="color:#E860CD">'; //je veux que le pseudo soit de la couleur rose
          										 else 
          										 	echo '<span style="color:blue">';    //sinon je veux qu'il soit bleue pour les hommes.
          											echo htmlspecialchars($donnees['pseudo'])?>
                  </span></strong> : <span class="message_chat"> <?php echo htmlspecialchars($donnees['message'])?> </span> </p>
                <?php
          		}$reponse->closeCursor();
          		
          		?>
              </div>
          	.....
          	<script type="text/javascript">
          		request(); //lancement requette Ajax
          	</script> 
          </body>
          </html>
          
          et le code du script php appellé par Ajax:
          scriptPHPreponseAjax.php (laisses ce nom)
          <?php
          //connexion au serveur
          ......
          // requette
          .......
          //puis
          while ($donnees = $reponse->fetch()){ 
                $rep= '<p> <span class="heure">'.htmlspecialchars($donnees['date_creation']).' </span> <strong title="'.htmlspecialchars($donnees['age']).' '.htmlspecialchars($donnees['sexe']).'class="pseudo_chat">';
                   if($donnees['sexe'] == 'F') {			 
          			//si c'est une fille
          			$rep+= '<span style="color:#E860CD">'; //je veux que le pseudo soit de la couleur rose
          		}else{ 
          			$rep+= '<span style="color:blue">';    //sinon je veux qu'il soit bleue pour les hommes.
          			$rep+= htmlspecialchars($donnees['pseudo']);
          		}
                  $rep+= '</span></strong> : <span class="message_chat">'.htmlspecialchars($donnees['message']).'</span> </p>';
                
          		}$reponse->closeCursor();
          		
          		//envoi de la réponse à Ajax:
          		echo $rep;
          ?>
          
          
          0
          1. Petit souci,

            Voici ma page chat.php (la où ce trouve l'affichage de mon chat)

            <?php 
            session_start();
            require_once 'config.php';
            
            
            
            
            
            	// Récupération des 10 derniers messages
            	$reponse = $bdd->query('SELECT pseudo, message, age, sexe, date_creation FROM chat_index ORDER BY ID LIMIT 0, 70');
            	
            	
            ?>
            
            <!DOCTYPE HTML>
            <html>
            <head>
            <meta charset="utf-8">
            <title>Chatoo</title>
            <link rel="stylesheet" type="text/css" href="css/style.css?ver=1"  />
            <link rel="stylesheet" type="text/css" href="css/boite_chat.css?ver=1"  />
            <!--[if lt IE 9]>
                <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
            <![endif]-->
            
            <script type="text/javascript">
            /////// fonctions_Ajax ///
            //fonction de base de creation de la request ------------------------------------------
            function getXMLHttpRequest(){
            	var XHR = false;
            		//créer une instance (un objet) de la classe désirée fonctionnant sur plusieurs navigateurs
                    if (window.XMLHttpRequest) { // Mozilla, Safari,...
                        XHR = new XMLHttpRequest();
                        if (XHR.overrideMimeType) {
                            XHR.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 {
                            XHR = new ActiveXObject("Msxml2.XMLHTTP");
                        } catch (e) {
                            try {
                                XHR = new ActiveXObject("Microsoft.XMLHTTP");
                            } catch (e) {}
                        }
                    }
            
                    if (!XHR) {
                        alert('Abandon : Impossible de créer une instance XMLHTTP');
                        return false;
                    }
            	return XHR;  
            }
            /////// --------------------------------------------------------------------------
            //fonction lançant la requette Ajax
            function request() {
            	var url='scriptPHPreponseAjax.php';
            		//création requette
            		var XHR = getXMLHttpRequest();
            		 //on definit ce qu'on va faire lorsqu'on recevra la réponse
            		XHR.onreadystatechange = function (){traitement_reponse(XHR);} 	
            		XHR.open('POST', url, true);		
            		XHR.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');		
            		XHR.send(null);
            		//appel toutes les secondes
            		setTimeout("request()",1000);	
            	
            }
            //fonction traitement_reponse à la requette Ajax
            function traitement_reponse(XHR){
            	if(XHR.readyState == 4 ){
            		if(XHR.status == 200) {
            			// cas avec reponse de PHP en mode texte				
            			var reponse=XHR.responseText;				
            			//affichage
            			document.getElementById("chat_index_bdd").innerHTML = reponse;
            				
            		}
            	}
            }
            </script>
            
            </head>
            
            <body onload="document.message_chat.message.focus();" onLoad="Ajax()">
            
            ................
            
             <div id="chat_index">
                <div id="chat_index_bdd">
                  <?php
            		// Affichage de chaque message (toutes les données sont protégées par htmlspecialchars)
            		while ($donnees = $reponse->fetch()){ ?>
                  <p> <span class="heure"> <?php echo htmlspecialchars($donnees['date_creation']) ?> </span> <strong title="<?php echo htmlspecialchars($donnees['age']), htmlspecialchars($donnees['sexe'])?> " class="pseudo_chat">
                    <?php if($donnees['sexe'] == 'F') 			 //si c'est une fille
            								   			echo '<span style="color:#E860CD">'; //je veux que le pseudo soit de la couleur rose
            										 else 
            										 	echo '<span style="color:blue">';    //sinon je veux qu'il soit bleue pour les hommes.
            											echo htmlspecialchars($donnees['pseudo'])?>
                    </span></strong> : <span class="message_chat"> <?php echo htmlspecialchars($donnees['message'])?> </span> </p>
                  <?php
            		}$reponse->closeCursor();
            		
            		?>
                </div>
                <div id="champ_chat_index">
                  <form name ="message_chat" action="chat_bdd.php" method="post">
                    <p>
                      <input type="text" name="message" id="message" value="Votre message" onfocus="if (this.value=='Votre message') this.value='';" onblur="if (this.value=='')
            				this.value='Votre message';"/>
                      <input type="submit" value="Envoyer"  id="bouton_envoi_index"/>
                    </p>
                  </form>
                </div>
              </div>
            
            ....................
            
            	<script type="text/javascript">
            		request(); //lancement requette Ajax
            	</script> 
            
            


            est-ce ok pour cette page ?

            Ma requette d'insertion de mon message est sur ma page "chat_bdd.php".
            Dois-je la supprimer et la remplacé par : "scriptPHPreponseAjax.php"

            <form name ="message_chat" action="chat_bdd.php OU scriptPHPreponseAjax.php" method="post">

            <?php
            session_start();
            require_once 'config.php';//connexion au serveur
            
            if (isset($_POST['message']) && !empty($_POST['message'])){
            
            	$req = $bdd->prepare('INSERT INTO chat_index (id, pseudo, age, sexe, message, date_creation ) VALUES (:id, :pseudo, :age, :sexe, :message, NOW())');
            	$req->execute(array(
            			'id' =>htmlspecialchars(''),
            			'pseudo' => htmlspecialchars($_SESSION['pseudo']),
            			'age' => htmlspecialchars($_SESSION['age']),
            			'sexe' => htmlspecialchars($_SESSION['sexe']),
            			'message'=> htmlspecialchars($_POST['message']),
            			
            			));
            			
            }
            
            	// Récupération des 10 derniers messages
            	$reponse = $bdd->query('SELECT pseudo, message, age, sexe, date_creation FROM chat_index ORDER BY ID LIMIT 0, 70');
            
            while ($donnees = $reponse->fetch()){ 
                  $rep= '<p> <span class="heure">'.htmlspecialchars($donnees['date_creation']).' </span> <strong title="'.htmlspecialchars($donnees['age']).' '.htmlspecialchars($donnees['sexe']).'class="pseudo_chat">';
                     if($donnees['sexe'] == 'F') {			 
            			//si c'est une fille
            			$rep+= '<span style="color:#E860CD">'; //je veux que le pseudo soit de la couleur rose
            		}else{ 
            			$rep+= '<span style="color:blue">';    //sinon je veux qu'il soit bleue pour les hommes.
            			$rep+= htmlspecialchars($donnees['pseudo']);
            		}
                    $rep+= '</span></strong> : <span class="message_chat">'.htmlspecialchars($donnees['message']).'</span> </p>';
                  
            		}$reponse->closeCursor();
            		
            		//envoi de la réponse à Ajax:
            		echo $rep;
            ?>
            		
            
            header('Location: chat.php');
            ?>


            Comme cela, j'ai essayé et ça ne marche pas...
            0
            1. est-ce ok pour cette page ? // ==> voir repmarques
              ........
              <body onload="document.message_chat.message.focus();">
               <!--  onLoad="Ajax()" tu ne peux pas mettre deux fois onload et puis quelle est cette fonction Ajax()
               le lancement de la requette ajax se faite plus bas   dans la page   request();
              
              ....
               -->


              Ma requette d'insertion de mon message est sur ma page "chat_bdd.php". d'accord, mais ça n'a rie a voir avec la réponse php à l'appel de Ajax
              Dois-je la supprimer et la remplacé par : "scriptPHPreponseAjax.php" NON, mais ne mélange pas les deux codes

              chat_bdd.php
              <?php
              session_start();
              require_once 'config.php';//connexion au serveur
              
              if (isset($_POST['message']) && !empty($_POST['message'])){
              
              	$req = $bdd->prepare('INSERT INTO chat_index (id, pseudo, age, sexe, message, date_creation ) VALUES (:id, :pseudo, :age, :sexe, :message, NOW())');
              	$req->execute(array(
              			'id' =>htmlspecialchars(''),
              			'pseudo' => htmlspecialchars($_SESSION['pseudo']),
              			'age' => htmlspecialchars($_SESSION['age']),
              			'sexe' => htmlspecialchars($_SESSION['sexe']),
              			'message'=> htmlspecialchars($_POST['message']),
              			
              			));
              			
              }
              ?>
              


              scriptPHPreponseAjax.php
              <?php
              session_start();
              require_once 'config.php';//connexion au serveur
              
              // Récupération des 10 derniers messages
              	$reponse = $bdd->query('SELECT pseudo, message, age, sexe, date_creation FROM chat_index ORDER BY ID LIMIT 0, 70');
              //bizarre que tu mettes LIMT 0,70 pour recupérer les 10 derniers mesages ??
              while ($donnees = $reponse->fetch()){ 
                    $rep= '<p> <span class="heure">'.htmlspecialchars($donnees['date_creation']).' </span> <strong title="'.htmlspecialchars($donnees['age']).' '.htmlspecialchars($donnees['sexe']).'class="pseudo_chat">';
                       if($donnees['sexe'] == 'F') {			 
              			//si c'est une fille
              			$rep+= '<span style="color:#E860CD">'; //je veux que le pseudo soit de la couleur rose
              		}else{ 
              			$rep+= '<span style="color:blue">';    //sinon je veux qu'il soit bleue pour les hommes.
              			$rep+= htmlspecialchars($donnees['pseudo']);
              		}
                      $rep+= '</span></strong> : <span class="message_chat">'.htmlspecialchars($donnees['message']).'</span> </p>';
                    
              		}$reponse->closeCursor();
              		
              		//envoi de la réponse à Ajax:
              		echo $rep;
              ?>
              
              
              0
              1. Ok,
                onLoad="Ajax()" = c'est un script que j'ai insérer pour un scrollbar auto en bas.
                Je peux l'enlever si le lancement de la requete ce fais plus bas ?

                Sinon pour le résultat suite au code, j'ai ma page qui s'affiche bien mais qui affiche un "0" a la place du texte des membres postant leurs messages.

                Mes page "chat_bdd.php" et "scriptPHPreponseAjax.php " sont identique au code que vous m'avez posté dans votre dernière réponse.

                avec le header de redirection a la page "chat_bdd.php".

                Pourquoi ce zéro s'affiche-t-il ?

                Je vous met l'intégralité de ma page "chat.php"

                <?php 
                session_start();
                require_once 'config.php';
                
                
                
                
                
                	// Récupération des 10 derniers messages
                	$reponse = $bdd->query('SELECT pseudo, message, age, sexe, date_creation FROM chat_index ORDER BY ID LIMIT 0, 70');
                	
                	
                ?>
                
                <!DOCTYPE HTML>
                <html>
                <head>
                <meta charset="utf-8">
                <title>Chatoo</title>
                <link rel="stylesheet" type="text/css" href="css/style.css?ver=1"  />
                <link rel="stylesheet" type="text/css" href="css/boite_chat.css?ver=1"  />
                <!--[if lt IE 9]>
                    <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
                <![endif]-->
                
                <script language="javascript" type="text/javascript">
                URL = "chat.php";
                function rafraichir() {
                        if (window.XMLHttpRequest) xhr = new XMLHttpRequest();
                        else if (window.ActiveXObject) xhr = new ActiveXObject('Microsoft.XMLHTTP');
                        else alert('JavaScript : votre navigateur ne supporte pas les objets XMLHttpRequest...');
                        xhr.open('GET',URL,true);
                        xhr.onreadystatechange = ajaxReponse;
                        xhr.send(null);
                }
                
                function ajaxReponse() {
                        if (xhr.readyState == 4) {
                                document.getElementById("#chat_index_bdd",true).innerHTML=xhr.responseText; // ici sa s'incrute dans la div <div id="page"></div> mais peut etre <td id="page">  ... Ici c'est L'id l'important
                                var timer=setTimeout("rafraichir()",1000); // rafraichie toute les 25secs
                        }
                }
                </script>
                
                <script type="text/javascript">
                /////// fonctions_Ajax ///
                //fonction de base de creation de la request ------------------------------------------
                function getXMLHttpRequest(){
                	var XHR = false;
                		//créer une instance (un objet) de la classe désirée fonctionnant sur plusieurs navigateurs
                        if (window.XMLHttpRequest) { // Mozilla, Safari,...
                            XHR = new XMLHttpRequest();
                            if (XHR.overrideMimeType) {
                                XHR.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 {
                                XHR = new ActiveXObject("Msxml2.XMLHTTP");
                            } catch (e) {
                                try {
                                    XHR = new ActiveXObject("Microsoft.XMLHTTP");
                                } catch (e) {}
                            }
                        }
                
                        if (!XHR) {
                            alert('Abandon : Impossible de créer une instance XMLHTTP');
                            return false;
                        }
                	return XHR;  
                }
                /////// --------------------------------------------------------------------------
                //fonction lançant la requette Ajax
                function request() {
                	var url='scriptPHPreponseAjax.php';
                		//création requette
                		var XHR = getXMLHttpRequest();
                		 //on definit ce qu'on va faire lorsqu'on recevra la réponse
                		XHR.onreadystatechange = function (){traitement_reponse(XHR);} 	
                		XHR.open('POST', url, true);		
                		XHR.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');		
                		XHR.send(null);
                		//appel toutes les secondes
                		setTimeout("request()",1000);	
                	
                }
                //fonction traitement_reponse à la requette Ajax
                function traitement_reponse(XHR){
                	if(XHR.readyState == 4 ){
                		if(XHR.status == 200) {
                			// cas avec reponse de PHP en mode texte				
                			var reponse=XHR.responseText;				
                			//affichage
                			document.getElementById("chat_index_bdd").innerHTML = reponse;
                				
                		}
                	}
                }
                </script>
                </head>
                
                <body onload="document.message_chat.message.focus();" >
                
                <div class="all">
                  <div id="en_tete"> <!--------------------------- EN TETE --------------------------->
                    
                    <h1> <span style="font-style:italic; color:#8B006F"> C</span>hat<span style="color:white">o</span><span style="font-weight:bold">o</span> </h1>
                    <h3> Le site mini du chat </h3>
                    <!--<div class="logo_titre"><img src="images/icon_bulles.png" /></div>--> 
                    
                  </div>
                  <!-------------------------------------- FIN EN TETE ----------------------->
                  
                  <div id="menu_principal"><!-------------------- MENU HORIZONTALE ------------------>
                    <ul>
                      <li id="selected"><a href="index.php" > Accueil </a></li>
                      <li><a href="salons.php"> Salons </a></li>
                      <li><a href="contact.php">Contact </a></li>
                    </ul>
                  </div>
                  <!--------------------------------------- FIN MENU HORIZONTALE ------------->
                  
                  <p> <strong> Bonjour <?php echo $_SESSION['pseudo']?> <a class="deco" href="deconnexion.php?pseudo='<?php echo $_SESSION['pseudo']?>'">Déconnexion</a></strong></p>
                  <p class="lien_region">Accede au salon de ta region: <a href="Salons/<?php echo $_SESSION['region'] ?>.php">#<?php echo $_SESSION['region'] ?></a> ! </p>
                  <div id="nb_co">
                    <?php $req = $bdd->query('SELECT COUNT(*) AS nb FROM connexion_chat');
                $donnees = $req->fetch();
                $nb_connecter = $donnees['nb'];
                ?>
                    <p style="color:#8B006F;"> Il y a <strong><?php echo $nb_connecter ?></strong> chatooyens de connectés sur ce salon.</p>
                  </div>
                  <div id="chat_index">
                    <div id="chat_index_bdd">
                      <?php
                		// Affichage de chaque message (toutes les données sont protégées par htmlspecialchars)
                		while ($donnees = $reponse->fetch()){ ?>
                      <p> <span class="heure"> <?php echo htmlspecialchars($donnees['date_creation']) ?> </span> <strong title="<?php echo htmlspecialchars($donnees['age']), htmlspecialchars($donnees['sexe'])?> " class="pseudo_chat">
                        <?php if($donnees['sexe'] == 'F') 			 //si c'est une fille
                								   			echo '<span style="color:#E860CD">'; //je veux que le pseudo soit de la couleur rose
                										 else 
                										 	echo '<span style="color:blue">';    //sinon je veux qu'il soit bleue pour les hommes.
                											echo htmlspecialchars($donnees['pseudo'])?>
                        </span></strong> : <span class="message_chat"> <?php echo htmlspecialchars($donnees['message'])?> </span> </p>
                      <?php
                		}$reponse->closeCursor();
                		
                		?>
                    </div>
                    <div id="champ_chat_index">
                      <form name ="message_chat" action="chat_bdd.php" method="post">
                        <p>
                          <input type="text" name="message" id="message" value="Votre message" onfocus="if (this.value=='Votre message') this.value='';" onblur="if (this.value=='')
                				this.value='Votre message';"/>
                          <input type="submit" value="Envoyer"  id="bouton_envoi_index"/>
                        </p>
                      </form>
                    </div>
                  </div>
                  <p class="actualiser"><a href="#"> >> Actualiser. </a></p>
                  <div id="pied_page"><!----------------------------- PIED DE PAGE --------------------->
                    <p> © Copyright 2012 - By <a href="http://vincent.janty.free.fr">Vincent.Janty.free.fr</a>. </p>
                  </div>
                </div>
                <!------------------------------------------- FIN PIED DE PAGE -----------------> 
                
                <script type="text/javascript" src="js/jquery-1.7.2.js"></script> 
                <script type="text/javascript" src="js/script.js"></script>
                
                
                	<script type="text/javascript">
                		request(); //lancement requette Ajax
                	</script> 
                </body></html>
                
                0
                1. vire déja ça :
                  <script language="javascript" type="text/javascript">
                  URL = "chat.php";
                  function rafraichir() {
                          if (window.XMLHttpRequest) xhr = new XMLHttpRequest();
                          else if (window.ActiveXObject) xhr = new ActiveXObject('Microsoft.XMLHTTP');
                          else alert('JavaScript : votre navigateur ne supporte pas les objets XMLHttpRequest...');
                          xhr.open('GET',URL,true);
                          xhr.onreadystatechange = ajaxReponse;
                          xhr.send(null);
                  }
                  
                  function ajaxReponse() {
                          if (xhr.readyState == 4) {
                                  document.getElementById("#chat_index_bdd",true).innerHTML=xhr.responseText; // ici sa s'incrute dans la div <div id="page"></div> mais peut etre <td id="page">  ... Ici c'est L'id l'important
                                  var timer=setTimeout("rafraichir()",1000); // rafraichie toute les 25secs
                          }
                  }
                  </script>
                  


                  et si tu as 0 c'est un pb avec le code de scriptPHPreponseAjax.php

                  essayes le lancer ce script directement en tapant son url dans ton navigateur pour voir ce qu'il envoie
                  0
                  1. en tapant l'url http://localhost/Chatoo_DW/scriptPHPreponseAjax.php
                    j'ai juste un "0" qui s'affiche.
                    0
                    1. oui donc c'est bien de la que vient le problème, tu doit avoir un soucis avec la requette SQL
                      0
                      1. Je ne comprends pas, mes codes sont bon ?

                        par contre j'avais oublié de répondre à:

                        // Récupération des 10 derniers messages
                        $reponse = $bdd->query('SELECT pseudo, message, age, sexe, date_creation FROM chat_index ORDER BY ID LIMIT 0, 70');
                        //bizarre que tu mettes LIMT 0,70 pour recupérer les 10 derniers mesages ??

                        Je ne veux pas récupérer les 10 derniers messages. Je veux afficher les 70 derniers messages.

                        C'est bien cette requette SQL là qui doit-être sur mes 2 page ?
                        scriptPHPreponseAjax.php et chat.php ?
                        0
                        1. ???????
                          0
                      2. slt,
                        c'est bien beau ce que vous faites
                        mais en réalité c'est trop long et Ajax à lui seul prend énormément de temps
                        il faut le faire avec jquery-ajax

                        mais Alain_42,
                        tu dois essayer plus facilement avec du Jquery
                        0
                        1. bon essayons un peu

                          - commence par telecharger et enregistrer la bibliothèque jquery sur http://code.jquery.com/jquery-1.7.2.min.js
                          - Ensuite, tu installes le fichier quelque part dans le dossier de ton site
                          - puis, tu appelle le fichier avec la méthode <script src="jquery-1.7.2.min.js"></script>
                          - A partir de là tout devient facile

                          Premier conseil
                          Sur ta page php
                          déclare ton div sans contenu
                          comme ceci:
                          <div id="chat_index_bdd"></div>

                          la suite après ta réponse
                          bye
                          0