Recuperer une valeur d'un formulaire
saraAnna
Messages postés
6
Statut
Membre
-
SaraAnna -
SaraAnna -
Bonjour ,
je travaille sur une application PHP et je veux récupérer certaines valeurs de mon formulaire mais avant sa soumission !!! ; donc non pas avec les POST & GET .
SVP si vous avez une solution qui pourras m'aider n'hésiter pas merci les amis :)
je travaille sur une application PHP et je veux récupérer certaines valeurs de mon formulaire mais avant sa soumission !!! ; donc non pas avec les POST & GET .
SVP si vous avez une solution qui pourras m'aider n'hésiter pas merci les amis :)
A voir également:
- Recuperer une valeur d'un formulaire
- Whatsapp formulaire opposition - Guide
- Comment recuperer un message supprimé sur whatsapp - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Comment recuperer une video sur youtube - Guide
- Comment récupérer un compte facebook piraté - Guide
5 réponses
Donc voila un petit exemple sur mon PB :
C'est que je veux récuperer la valeur d'une liste de choix et pouvoir par la suit la stocker dans une variable et l'exploiter dans du code php !
<html>
<head>
</head>
<body>
<script>
function voirSelection(liste)
{
var numero = liste.selectedIndex;
var valeur = liste.options[numero].value;
if (valeur==2)
{
<?php $id="<select name=' '>";
$id.="<option value=0>choisissez</option>";
while($row=mysql_fetch_array($query1))
{
$type_vh=$row['type_Vehicule'];
$type_id=$row['id'];
$id.="<option value='$type_id'>$type_vh</option>";
}
$id.="</select>";
print $id;
?>
}
}
</script>
<form action="" method="post"id="monFormulaire">
<select name="transporteur" onchange='voirSelection(this)'>
<option value=1>1</option>
<option value=2>2</option>
</select>
</forme>
j'attends toujours vos réponse merci beaucoup d'avance les amis :)
C'est que je veux récuperer la valeur d'une liste de choix et pouvoir par la suit la stocker dans une variable et l'exploiter dans du code php !
<html>
<head>
</head>
<body>
<script>
function voirSelection(liste)
{
var numero = liste.selectedIndex;
var valeur = liste.options[numero].value;
if (valeur==2)
{
<?php $id="<select name=' '>";
$id.="<option value=0>choisissez</option>";
while($row=mysql_fetch_array($query1))
{
$type_vh=$row['type_Vehicule'];
$type_id=$row['id'];
$id.="<option value='$type_id'>$type_vh</option>";
}
$id.="</select>";
print $id;
?>
}
}
</script>
<form action="" method="post"id="monFormulaire">
<select name="transporteur" onchange='voirSelection(this)'>
<option value=1>1</option>
<option value=2>2</option>
</select>
</forme>
j'attends toujours vos réponse merci beaucoup d'avance les amis :)
Bonjour,
j'avais peur de comprendre ton soucis... et j'avais raison ^^
beurk beurk beurk beurk beurk^^
ceci est malheureusement absolument FAUX et IMPOSSIBLE.
*va vraiment faire un post type pour pas avoir à réécrire^^*
le javascript est un langage client, contrairement au PHP qui lui est un langage serveur. c'est à dire que le client est incapable d'interpréter le PHP.
il est donc impossible de mettre du php dans du javascript car la partie serveur est deja effectuée.
la seule solution qui s'offre a toi est l'AJAX, c'est a dire que, à la place de ca:
tu vas appeler une page php en AJAX (donc retour coté serveur) pour faire ta requête et tu interprétera le resultat
j'avais peur de comprendre ton soucis... et j'avais raison ^^
function voirSelection(liste)
{
var numero = liste.selectedIndex;
var valeur = liste.options[numero].value;
if (valeur==2)
{
<?php $id="<select name=' '>";
$id.="<option value=0>choisissez</option>";
while($row=mysql_fetch_array($query1))
{
$type_vh=$row['type_Vehicule'];
$type_id=$row['id'];
$id.="<option value='$type_id'>$type_vh</option>";
}
$id.="</select>";
print $id;
?>
}
}
beurk beurk beurk beurk beurk^^
ceci est malheureusement absolument FAUX et IMPOSSIBLE.
*va vraiment faire un post type pour pas avoir à réécrire^^*
le javascript est un langage client, contrairement au PHP qui lui est un langage serveur. c'est à dire que le client est incapable d'interpréter le PHP.
il est donc impossible de mettre du php dans du javascript car la partie serveur est deja effectuée.
la seule solution qui s'offre a toi est l'AJAX, c'est a dire que, à la place de ca:
<?php $id="<select name=' '>";
$id.="<option value=0>choisissez</option>";
while($row=mysql_fetch_array($query1))
{
$type_vh=$row['type_Vehicule'];
$type_id=$row['id'];
$id.="<option value='$type_id'>$type_vh</option>";
}
$id.="</select>";
print $id;
?>
tu vas appeler une page php en AJAX (donc retour coté serveur) pour faire ta requête et tu interprétera le resultat
Voila Gremy STTTTTTTP j'ai commencer à lire AJAX :p mais comme dab je blokkk en fait voila un exemple dont le quelle il faut que je transmette via request.send deux parametres le premier soucis c'est que je s'ais si la syntaxe est juste pour passer deux valeurs et le faite d'utiliser document.getElementById('listeType').selectedIndex comme parametre de fonction voila mon code si tu arrive à voir l'erreur je t'en pri de m'aider merci bc bc bc :)
*************Page1.php***********************************
<html> <head>
<script type="text/javascript">
function getRequeteHttp()
{
var requeteHttp;
if (window.XMLHttpRequest)
{
requeteHttp=new XMLHttpRequest();
if (requeteHttp.overrideMimeType)
{
requeteHttp.overrideMimeType('text/xml');
}
}
else
{
if (window.ActiveXObject)
{
try { requeteHttp=new ActiveXObject("Msxml2.XMLHTTP"); }
catch(e) {
try {
requeteHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e) {
requeteHttp=null;
}
}
}
}
return requeteHttp;
}
function envoyerRequete(url, debut, type)
{
var requeteHttp=getRequeteHttp();
if (requeteHttp==null)
{
alert("Impossible d'utiliser Ajax sur ce navigateur");
}
else
{
requeteHttp.open('POST',url,true);
requeteHttp.onreadystatechange= function() {recevoirReponse(requeteHttp);};
requeteHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
requeteHttp.send('debutLib=' + escape(debut)+'&debutType='+escape(type));
//requeteHttp.send('debutType=' + escape(type));
}
return;
}
function recevoirReponse(requeteHttp)
{
if (requeteHttp.readyState==4)
{
if (requeteHttp.status==200)
{
traiterReponse(requeteHttp.responseText);
}
else
{
alert("La requête ne s'est pas correctement exécutée");
}
}
}
function traiterReponse(reponse)
{
var i,nb,selectPdt;
var produits=reponse.split('/');
nb=produits.length;
selectPdt=document.getElementById("listePdt");
selectPdt.length=nb;
for (i=0; i<nb; i++)
{
selectPdt.options[i].text=produits[i];
}
}
</script>
</script>
</head>
<body>
Libellé : <input type="text" onkeyup="javascript:envoyerRequete('getProduits.php',this.value,document.getElementById('listeType').selectedIndex)">
<br /> Liste des produits : <br />
<select id="listePdt" size="4"> </select>
<select id="listeType" size="4" onchange=''>
<option id=1 value=1>categorie1</option>
<option id=2 value=2>categorie2</option>
</select>
</body>
</html>
************************page2.php****************************************
<?php
header("Cache-Control: no-cache, must-revalidate");
header('Content-Type: text/plain; charset=ISO-8859-1');
$cnx=mysql_connect('localhost','root','');
mysql_select_db('ajax',$cnx);
//$req=mysql_query("select * from produit where pr_libelle like '".$_POST['debutLib']."%'" );
$req=mysql_query("select * from produit where pr_libelle like '".$_POST['debutLib']."%'AND pr_categorie=".$_POST['debutType']."");
$pdt=mysql_fetch_assoc($req);
if ($pdt)
{
$resultat=$pdt['pr_libelle'];
$pdt=mysql_fetch_assoc($req);
}
else
{
$resultat='';
}
while($pdt)
{
$resultat=$resultat.'/'.$pdt['pr_libelle'];
$pdt=mysql_fetch_assoc($req);
}
mysql_close($cnx);
echo $resultat;
?>
et Si ya qqn qui a une idée svp donner moi vos remarque merci
*************Page1.php***********************************
<html> <head>
<script type="text/javascript">
function getRequeteHttp()
{
var requeteHttp;
if (window.XMLHttpRequest)
{
requeteHttp=new XMLHttpRequest();
if (requeteHttp.overrideMimeType)
{
requeteHttp.overrideMimeType('text/xml');
}
}
else
{
if (window.ActiveXObject)
{
try { requeteHttp=new ActiveXObject("Msxml2.XMLHTTP"); }
catch(e) {
try {
requeteHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e) {
requeteHttp=null;
}
}
}
}
return requeteHttp;
}
function envoyerRequete(url, debut, type)
{
var requeteHttp=getRequeteHttp();
if (requeteHttp==null)
{
alert("Impossible d'utiliser Ajax sur ce navigateur");
}
else
{
requeteHttp.open('POST',url,true);
requeteHttp.onreadystatechange= function() {recevoirReponse(requeteHttp);};
requeteHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
requeteHttp.send('debutLib=' + escape(debut)+'&debutType='+escape(type));
//requeteHttp.send('debutType=' + escape(type));
}
return;
}
function recevoirReponse(requeteHttp)
{
if (requeteHttp.readyState==4)
{
if (requeteHttp.status==200)
{
traiterReponse(requeteHttp.responseText);
}
else
{
alert("La requête ne s'est pas correctement exécutée");
}
}
}
function traiterReponse(reponse)
{
var i,nb,selectPdt;
var produits=reponse.split('/');
nb=produits.length;
selectPdt=document.getElementById("listePdt");
selectPdt.length=nb;
for (i=0; i<nb; i++)
{
selectPdt.options[i].text=produits[i];
}
}
</script>
</script>
</head>
<body>
Libellé : <input type="text" onkeyup="javascript:envoyerRequete('getProduits.php',this.value,document.getElementById('listeType').selectedIndex)">
<br /> Liste des produits : <br />
<select id="listePdt" size="4"> </select>
<select id="listeType" size="4" onchange=''>
<option id=1 value=1>categorie1</option>
<option id=2 value=2>categorie2</option>
</select>
</body>
</html>
************************page2.php****************************************
<?php
header("Cache-Control: no-cache, must-revalidate");
header('Content-Type: text/plain; charset=ISO-8859-1');
$cnx=mysql_connect('localhost','root','');
mysql_select_db('ajax',$cnx);
//$req=mysql_query("select * from produit where pr_libelle like '".$_POST['debutLib']."%'" );
$req=mysql_query("select * from produit where pr_libelle like '".$_POST['debutLib']."%'AND pr_categorie=".$_POST['debutType']."");
$pdt=mysql_fetch_assoc($req);
if ($pdt)
{
$resultat=$pdt['pr_libelle'];
$pdt=mysql_fetch_assoc($req);
}
else
{
$resultat='';
}
while($pdt)
{
$resultat=$resultat.'/'.$pdt['pr_libelle'];
$pdt=mysql_fetch_assoc($req);
}
mysql_close($cnx);
echo $resultat;
?>
et Si ya qqn qui a une idée svp donner moi vos remarque merci
Bonjour,
a première vue, sans avoir testé, ca me parait pas mal.
quelques conseils personnels:
-en PHP le fait de décomposer tout en fonction pour être plus modulaire est un principe presque fondamentale, en JS je trouve ca beaucoup plus dur a suivre mais ce n'est qu'un avis personnel.
-les requêtes AJAX n'étant pas "visible" a première vue de l'utilisateur, privilégie la méthode GET pour envoyer tes informations je trouve ca bien plus simple
-si ce n'est pas deja le cas, munie toi du module complémentaire firebug de firefox qui te permettra de visualiser tes requêtes AJAX et de voir ce qu'elles renvoient.
je vais tester ca un peu plus et te tiens au courant.
a première vue, sans avoir testé, ca me parait pas mal.
quelques conseils personnels:
-en PHP le fait de décomposer tout en fonction pour être plus modulaire est un principe presque fondamentale, en JS je trouve ca beaucoup plus dur a suivre mais ce n'est qu'un avis personnel.
-les requêtes AJAX n'étant pas "visible" a première vue de l'utilisateur, privilégie la méthode GET pour envoyer tes informations je trouve ca bien plus simple
requeteHttp.open('GET',url+'?var1=toto&var2=tutu&var3=tata',true);
requeteHttp.onreadystatechange= function() {recevoirReponse(requeteHttp);};
requeteHttp.send(null);
-si ce n'est pas deja le cas, munie toi du module complémentaire firebug de firefox qui te permettra de visualiser tes requêtes AJAX et de voir ce qu'elles renvoient.
je vais tester ca un peu plus et te tiens au courant.
re,
après test, il te manque juste un concept très important à assimiler^^
si c'est comme moi, ton soucis est que tu as ca:
alert("La requête ne s'est pas correctement exécutée");
tout le temps.
c'est tout a fait normal!
la requête AJAX passe par différents états state et readystate durant son execution.
la fonction recevoirReponse s'execute dès que l'état change donc dès le debut tes conditions
ne sont pas remplies et donc il fait l'alert.
le passage dans la branche du
alert("La requête ne s'est pas correctement exécutée");
ne veut pas dire que la requête ne s'esdt pas correctement executé, cela signifie qu'elle n'est pas finie d'exécutée donc il ne faut rien faire du tout, juste attendre.
après test, il te manque juste un concept très important à assimiler^^
si c'est comme moi, ton soucis est que tu as ca:
alert("La requête ne s'est pas correctement exécutée");
tout le temps.
c'est tout a fait normal!
la requête AJAX passe par différents états state et readystate durant son execution.
la fonction recevoirReponse s'execute dès que l'état change donc dès le debut tes conditions
if (requeteHttp.readyState==4)
{
if (requeteHttp.status==200)
{
ne sont pas remplies et donc il fait l'alert.
le passage dans la branche du
alert("La requête ne s'est pas correctement exécutée");
ne veut pas dire que la requête ne s'esdt pas correctement executé, cela signifie qu'elle n'est pas finie d'exécutée donc il ne faut rien faire du tout, juste attendre.
<html> <head>
<script type="text/javascript">
function getRequeteHttp()
{
var requeteHttp;
if (window.XMLHttpRequest)
{
requeteHttp=new XMLHttpRequest();
if (requeteHttp.overrideMimeType)
{
requeteHttp.overrideMimeType('text/xml');
}
}
else
{
if (window.ActiveXObject)
{
try { requeteHttp=new ActiveXObject("Msxml2.XMLHTTP"); }
catch(e) {
try {
requeteHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e) {
requeteHttp=null;
}
}
}
}
return requeteHttp;
}
function envoyerRequete(url, debut, type)
{
var requeteHttp=getRequeteHttp();
if (requeteHttp==null)
{
alert("Impossible d'utiliser Ajax sur ce navigateur");
}
else
{
requeteHttp.open('POST',url,true);
requeteHttp.onreadystatechange= function() {recevoirReponse(requeteHttp);};
requeteHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
requeteHttp.send('debutLib=' + escape(debut)+'&debutType='+escape(type));
//requeteHttp.send('debutType=' + escape(type));
}
return;
}
function recevoirReponse(requeteHttp)
{
if (requeteHttp.readyState==4)
{
if (requeteHttp.status==200)
{
traiterReponse(requeteHttp.responseText);
}
else
{
//alert("La requête ne s'est pas correctement exécutée");
}
}
}
function traiterReponse(reponse)
{
var i,nb,selectPdt;
var produits=reponse.split('/');
nb=produits.length;
selectPdt=document.getElementById("listePdt");
selectPdt.length=nb;
for (i=0; i<nb; i++)
{
selectPdt.options[i].text=produits[i];
}
}
</script>
</script>
</head>
<body>
Libellé : <input type="text" onkeyup="javascript:envoyerRequete('test11.php',this.value,document.getElementById('listeType').selectedIndex)">
<br /> Liste des produits : <br />
<select id="listePdt" size="4"> </select>
<select id="listeType" size="4" onchange=''>
<option id=1 value=1>categorie1</option>
<option id=2 value=2>categorie2</option>
</select>
</body>
</html>
re ^^
Ok voila c'est exact !! si nn pour le code ca marche mnt avc ca merci bc bc bc bc ^^ : et avec l'aide d'un ami j'ai pu récuperer mes parametres .Merci bc pour ton aide.
Page 1.php
<html>
<head>
<script type="text/javascript">
function getRequeteHttp()
{
var requeteHttp;
if (window.XMLHttpRequest)
{
requeteHttp=new XMLHttpRequest();
if (requeteHttp.overrideMimeType)
{
requeteHttp.overrideMimeType('text/xml');
}
}
else
{
if (window.ActiveXObject)
{
try { requeteHttp=new ActiveXObject("Msxml2.XMLHTTP"); }
catch(e) {
try {
requeteHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e) {
requeteHttp=null;
}
}
}
}
return requeteHttp;
}
function envoyerRequete(url)
{
var requeteHttp=getRequeteHttp();
var depart=document.getElementById("VilleDepart").value;
var arrivee=document.getElementById("VilleArrivee").value;
if (requeteHttp==null)
{
alert("Impossible d'utiliser Ajax sur ce navigateur");
}
else
{
requeteHttp.open('POST',url,true);
requeteHttp.onreadystatechange= function() {recevoirReponse(requeteHttp);};
requeteHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
requeteHttp.send('departLib=' + depart+'&arriveeLib=' + arrivee);
}
return;
}
function recevoirReponse(requeteHttp)
{
if (requeteHttp.readyState==4)
{
if (requeteHttp.status==200)
{
traiterReponse(requeteHttp.responseText);
}
else
{
alert("La requête ne s'est pas correctement exécutée");
}
}
}
function traiterReponse(reponse)
{
document.getElementById("km").value=reponse;
}
</script>
</head>
<body>
<input type="text" id="VilleDepart" />
<input type="text" id="VilleArrivee" onkeyup="javascript:envoyerRequete('Teste_Param.php')"/>
<!--<input type="button" onclick="javascript:envoyerRequete('Teste_Param.php')"/><br/>-->
<input id="km">
</body></html>
Page 2 .php
<?php
header("Cache-Control: no-cache, must-revalidate");
header('Content-Type: text/plain; charset=ISO-8859-1');
$cnx=mysql_connect('localhost','root','');
mysql_select_db('teste1',$cnx);
$req=mysql_query("select km from KM where depart = '".$_POST['departLib']."' AND arrivee = '".$_POST['arriveeLib']."'");
$pdt=mysql_fetch_assoc($req);
if ($pdt)
{
$resultat=$pdt['km'];
$pdt=mysql_fetch_assoc($req);
}
else
{
$resultat='';
}
while($pdt)
{
$resultat=$pdt['km'];
$pdt=mysql_fetch_assoc($req);
}
mysql_close($cnx);
echo $resultat;
?>
Ok voila c'est exact !! si nn pour le code ca marche mnt avc ca merci bc bc bc bc ^^ : et avec l'aide d'un ami j'ai pu récuperer mes parametres .Merci bc pour ton aide.
Page 1.php
<html>
<head>
<script type="text/javascript">
function getRequeteHttp()
{
var requeteHttp;
if (window.XMLHttpRequest)
{
requeteHttp=new XMLHttpRequest();
if (requeteHttp.overrideMimeType)
{
requeteHttp.overrideMimeType('text/xml');
}
}
else
{
if (window.ActiveXObject)
{
try { requeteHttp=new ActiveXObject("Msxml2.XMLHTTP"); }
catch(e) {
try {
requeteHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e) {
requeteHttp=null;
}
}
}
}
return requeteHttp;
}
function envoyerRequete(url)
{
var requeteHttp=getRequeteHttp();
var depart=document.getElementById("VilleDepart").value;
var arrivee=document.getElementById("VilleArrivee").value;
if (requeteHttp==null)
{
alert("Impossible d'utiliser Ajax sur ce navigateur");
}
else
{
requeteHttp.open('POST',url,true);
requeteHttp.onreadystatechange= function() {recevoirReponse(requeteHttp);};
requeteHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
requeteHttp.send('departLib=' + depart+'&arriveeLib=' + arrivee);
}
return;
}
function recevoirReponse(requeteHttp)
{
if (requeteHttp.readyState==4)
{
if (requeteHttp.status==200)
{
traiterReponse(requeteHttp.responseText);
}
else
{
alert("La requête ne s'est pas correctement exécutée");
}
}
}
function traiterReponse(reponse)
{
document.getElementById("km").value=reponse;
}
</script>
</head>
<body>
<input type="text" id="VilleDepart" />
<input type="text" id="VilleArrivee" onkeyup="javascript:envoyerRequete('Teste_Param.php')"/>
<!--<input type="button" onclick="javascript:envoyerRequete('Teste_Param.php')"/><br/>-->
<input id="km">
</body></html>
Page 2 .php
<?php
header("Cache-Control: no-cache, must-revalidate");
header('Content-Type: text/plain; charset=ISO-8859-1');
$cnx=mysql_connect('localhost','root','');
mysql_select_db('teste1',$cnx);
$req=mysql_query("select km from KM where depart = '".$_POST['departLib']."' AND arrivee = '".$_POST['arriveeLib']."'");
$pdt=mysql_fetch_assoc($req);
if ($pdt)
{
$resultat=$pdt['km'];
$pdt=mysql_fetch_assoc($req);
}
else
{
$resultat='';
}
while($pdt)
{
$resultat=$pdt['km'];
$pdt=mysql_fetch_assoc($req);
}
mysql_close($cnx);
echo $resultat;
?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question