Partage
  • Partager sur Facebook
  • Partager sur Twitter

Grosse mélasse avec xmlhttprequest

Première fois que je touche à AJAX...

Sujet résolu
Anonyme
    11 août 2010 à 18:13:53

    Bonjour et déjà merci de me lire !

    Je programme un forum et j'aimerais que les visiteurs voient en temps réel ce qu'ils écrivent (dans le cas du post d'une réponse à un sujet) dans un cadre en dessous du textarea.
    Je suis carrément perdu, j'ai fais comme j'ai pus avec google et différents sites mais je n'avance pas du tout... Je vais donc sans plus tarder vous montrer le code que j'ai actuellement (qui doit être monstrueux j'imagine) et croiser les doigts que l'un d'entre ovus puisse m'aider ^^


    <form action="page.php" method="post">
    	Entrez votre message : *
    	<br />
    	<textarea name="message" id="message" cols=50 rows=20 onKeyUp="previsualisation();" onMouseOver="previsualisation();"></textarea>
    	<br />
    	<input type="submit" value="Valider" />
    </form>
    <script type="text/javascript" language="javascript">
    function previsualisation()
    {
    	//Création du XMLHttpRequest
    	try
    	{
    		xhr=new ActiveXObject('Msxml2.XMLHTTP');
    	}
    	catch(e)
    	{
    		try
    		{
    			xhr=new ActiveXObject("Microsoft.XMLHTTP");
    		}
    		catch(e2)
    		{
    			try
    			{
    				xhr=new XMLHttpRequest();
    			}
    			catch(e3)
    			{
    				xhr=false;
    			}
    		}
    	}
    	
    	//Gestion
    	xhr.onreadystatechange=function()
    	{ 
    		if(xhr.readyState==4)
    		{
    			if(xhr.status==200)
    			{
    				alert(xhr.responseText);
    				//document.getElementById('previsualisation').innerHTML=xhr.responseText;
    			}
    		}
    	}
    	
    	//Envoie
    	param='message='+document.getElementById('message').value;
    	
    	xhr.open('POST', 'previsualisation.php', true);
    	http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    	http.setRequestHeader("Content-length", param.length);
    	http.setRequestHeader("Connection", "close");
    	xhr.send(param);
    }
    </script>
    
    <div id="previsualisation">test</div>
    



    Mon fichier previsualisation.php contient ceci :

    <?php
    echo 'test ok !';
    ?>
    


    Et je n'ai jamais recus le alert avec "Test ok !" dedans... En fait, je ne recois rien...

    Merci d'avance de toutes aides apportées à mon problème :)
    • Partager sur Facebook
    • Partager sur Twitter
      11 août 2010 à 19:40:35

      xhr.open('POST', 'previsualisation.php', true);
      	http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      	http.setRequestHeader("Content-length", param.length);
      	http.setRequestHeader("Connection", "close");
      xhr.send(param);
      


      Ce n'est pas http.setRequestHeader mais xhr.setRequestHeader.
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        11 août 2010 à 19:52:30

        Super grand merci ça fonctionne !

        Je peux commencer à développer mon script :)

        Encore merci, problème réglé ;)
        Je m'attendais à plus d'erreurs que cela pourtant... ^^

        • Partager sur Facebook
        • Partager sur Twitter
          11 août 2010 à 20:04:37

          En fait, j'ai copié-collé ton script et j'ai regardé la console d'erreur javascript de mon navigateur ^^
          • Partager sur Facebook
          • Partager sur Twitter
          Anonyme
            11 août 2010 à 20:19:55

            Heu... Au risque de me faire passer pour un gros plop... C'est quoi cette astuce de fou (dont j'ai jamais entendu parlé) ? ^^
            • Partager sur Facebook
            • Partager sur Twitter
              11 août 2010 à 20:41:33

              Si tu as Firefox : http://www.siteduzero.com/tutoriel-3-3 [...] -firefox.html
              Sinon pour Safari ou Chrome utilise les Developer Tools sont déjà intégré.
              • Partager sur Facebook
              • Partager sur Twitter
              Anonyme
                11 août 2010 à 20:44:10

                Merci Ninety, je m'en vais lire cela :)
                • Partager sur Facebook
                • Partager sur Twitter

                Grosse mélasse avec xmlhttprequest

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                • Editeur
                • Markdown