2010-06-04 3 views
0

Je ne vois aucune erreur dans Firebug, et je ne peux pas comprendre ce qui ne va pas avec l'AJAX.Quel est le problème avec mon script?

PHP:

<?php 


$subject = $_POST['subject']; 

echo $subject; 



?> 

Javascript

<html> 
<head> 
<script type="text/javascript"> 
/* <![CDATA[ */ 

    function ajax() { 


     if (window.XMLHttpRequest) { 
      xmlhttp=new XMLHttpRequest();   
     } else { 
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
     } 

     xmlhttp.onreadystatechange=function() { 
      if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
       document.getElementById("result_div").value = xmlhttp.responseText; 
      } 
     } 
     xmlhttp.open("POST","message.php",true); 
     xmlhttp.send(); 

     return false; 
    } 

    /* ]]> */ 
</script> 
</head> 
<body> 
<div id="result_div"></div> 
<form action="" onsubmit="return ajax();"> 

    <select name="teest"> 
     <option value="hi">hi</option> 
    </select><br /> 

    <input type="text" name="subject"> <br /> 
      <input type="submit"> 

</form> 

</body> 
</html> 
+2

Conseil: jQuery – kamasheto

+0

Plus précisément, jQuery sérialisera les données de soumission pour vous (http://api.jquery.com/serialize/) et facilitera grandement la soumission de la requête (http://api.jquery.com/jQuery.post/) - aussi simple que $ .post ("message.php", $ ("# testform"). serialize()); si votre formulaire a l'ID de "testForm". A gauche pour ajouter la valeur div. –

Répondre

2

Vous n'êtes pas POST ing quoi que ce soit. Lors de l'utilisation des formulaires ajax sont pas traitées automatiquement pour vous.

+0

Est-il plus idéal d'utiliser obtenir ou poster? – Strawberry

+0

Rien n'est publié car xmlhttp.send(); est vide. xmlhttp.send ('subject = hello'); devrait définir la valeur div à bonjour. –

+1

Get vs post voir: http://stackoverflow.com/questions/715335/get-vs-post-in-ajax –

Questions connexes