Envoyer une varibale vers la même page.
Posté : 04 mai 2007, 20:01
Bonjour tout le monde,
J'ai un problème lors de l'envoie de la valeur d'un champs de texte avec javascript/AJAX vers la même page PHP. Je m'explique :
En faite ma page contient un simple formulaire avec un champ de texte simple et deux boutons, l'un est un simple (Add) l'autre un submit (Submit). Je veux sauvegarder la valeur saisie dans le champ de texte à chaque fois que je clique sur le bouton Add sans que je charge la page, une fois terminé j'affiche la totale avec le bouton submit.
j'ai essayé ceci :

J'ai un problème lors de l'envoie de la valeur d'un champs de texte avec javascript/AJAX vers la même page PHP. Je m'explique :
En faite ma page contient un simple formulaire avec un champ de texte simple et deux boutons, l'un est un simple (Add) l'autre un submit (Submit). Je veux sauvegarder la valeur saisie dans le champ de texte à chaque fois que je clique sur le bouton Add sans que je charge la page, une fois terminé j'affiche la totale avec le bouton submit.
j'ai essayé ceci :
<?php
$vals= "Values :<br>" ;
if(isset($_GET['value']))
{
$vals.= $_GET['value']."<br>" ;
}
if(isset($_POST['send']))
{
echo $vals ;
}
?>
<html>
<head>
<script language="javascript'>
function getXMLHTTPRequest(){
try
{req = new XMLHttpRequest();}
catch(err1)
{
try
{req = new ActiveXObject("Msxml2.XMLHTTP");}
catch (err2)
{try {
req = new ActiveXObject("Microsoft.XMLHTTP");alert("ici");
}
catch (err3)
{
req = false;
}
}
}
return req;
}
var http = getXMLHTTPRequest();
function addValue(valeur)
{
var myurl = "<?php echo $_SERVER['PHP_SELF'] ; ?>";
myRand = parseInt(Math.random()*999999999999999);
var modurl = myurl+"?value="+valeur+"&rand="+myRand+"&sid="+<?php echo SID ?>;
http.open("GET", modurl, true);
http.onreadystatechange = useHttpResponseAdd;
http.send(null);
}
function useHttpResponseAdd()
{
if (http.readyState == 4)
{
if(http.status == 200)
{
document.getElementById('done').innerHTML = "value added";
}
}
else
{
document.getElementById('done').innerHTML = '<img src="add.gif">';
}
}
</script>
</head>
<body>
<form method="POST" action ="<?php echo $_SERVER['PHP_SELF'] ; ?>">
<input type="text" id="txtField"><div id="done"></div>
<input type="button" value="Add" onClick="javascript:addValue(document.getElementById('txtField').value);">
<input type="submit" value="Submit" name="send">
</body>
</html>
Merci pout votre aide