Récuperer la valeur d'une liste deroulante
Fermé
sabra
-
27 mai 2012 à 23:24
Alain_42 Messages postés 5358 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 30 mai 2012 à 13:40
Alain_42 Messages postés 5358 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 30 mai 2012 à 13:40
A voir également:
- Récuperer la valeur d'une liste deroulante
- Liste déroulante excel - Guide
- Recuperer video youtube - Guide
- Vba récupérer valeur cellule ✓ - Forum VB / VBA
- Supprimer liste déroulante excel ✓ - Forum Excel
- Comment récupérer une adresse mail - Guide
5 réponses
belgikoi
Messages postés
44
Date d'inscription
mercredi 30 novembre 2011
Statut
Membre
Dernière intervention
15 octobre 2012
6
28 mai 2012 à 00:51
28 mai 2012 à 00:51
En PHP :
En JavaScript :
<?php $_POST['article']; ?>
En JavaScript :
document.getElementById("article").value;
Alain_42
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
901
29 mai 2012 à 09:55
29 mai 2012 à 09:55
il y a surtout une grosse anomalie dans la generation de la liste:
echo "<option name=\"ok\">".$val['Des_A']."</option>";
l'attribut name doit seulement être dans la balise <select
<option par contre doit avoir value="..."
echo "<option name=\"ok\">".$val['Des_A']."</option>";
l'attribut name doit seulement être dans la balise <select
<option par contre doit avoir value="..."
echo "<option value=\"".$val['Des_A']."\">".$val['Des_A']."</option>";
Alain_42
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
901
30 mai 2012 à 09:42
30 mai 2012 à 09:42
ça n'est pas très précis, ta réponse ça ne fonctionne pas (quoi, quel message d'erreur ??), mais voilà quand même une solution, avec d'autres corrections
<?php
$base=mysql_connect('localhost', 'root', '');
mysql_select_db('monapplication', $base);
?>
<form name="form1" action="comM.php" method="Get">
<table>
<tr>
<td>
<label ><strong><font color="#0097C5">Article:</font></strong></label>
</td>
<td>
<select name="article" id="article" style="width: 170px">
<?php
$SQL = "SELECT Des_A FROM articles WHERE titre_A NOT LIKE 'pack'";
$res = mysql_query($SQL);
while($val=mysql_fetch_array($res)) {
echo '<option value="'.$val['Des_A'].'">'.$val['Des_A'].'</option>';
}
?> </select>
</td>
</tr>
<tr>
<td>
<label ><strong><font color="#0097C5">Qte:</font></strong></label>
</td>
<td>
<input type="text" name="qte1" id="qte1" value="" />
</td>
</tr>
</table>
<div id="templatemo_login">
<input type="submit" name="envoyer" value="envoyer" class="button"/>
</div>
<?php
if(isset($_GET['envoyer']))
{
$sql="SELECT qte FROM articles WHERE Des_A= '".$_GET["article"]."'";
$res = mysql_query($sql);
//il faut extraire la quantité trouvé du resultat de la requette par un mysql_fetch...
$ligne=mysql_fetch_array($res);
$qte_dispo=$ligne['qte'];
$qte1=$_GET['qte1']; //la erreur
if($qte1 > $qte_dispo)
{
echo '<script type="text/javascript">alert("qte indisponible");</script>';
}
Alain_42
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
901
30 mai 2012 à 10:19
30 mai 2012 à 10:19
rajoutes cettetrce
<?php
$base=mysql_connect('localhost', 'root', '');
mysql_select_db('monapplication', $base);
?>
<form name="form1" action="comM.php" method="Get">
<table>
<tr>
<td>
<label ><strong><font color="#0097C5">Article:</font></strong></label>
</td>
<td>
<select name="article" id="article" style="width: 170px">
<?php
$SQL = "SELECT Des_A FROM articles WHERE titre_A NOT LIKE 'pack'";
$res = mysql_query($SQL);
while($val=mysql_fetch_array($res)) {
echo '<option value="'.$val['Des_A'].'">'.$val['Des_A'].'</option>';
}
?> </select>
</td>
</tr>
<tr>
<td>
<label ><strong><font color="#0097C5">Qte:</font></strong></label>
</td>
<td>
<input type="text" name="qte1" id="qte1" value="" />
</td>
</tr>
</table>
<div id="templatemo_login">
<input type="submit" name="envoyer" value="envoyer" class="button"/>
</div>
<?php
if(isset($_GET['envoyer']))
{
$sql="SELECT qte FROM articles WHERE Des_A= '".$_GET["article"]."'";
$res = mysql_query($sql);
//il faut extraire la quantité trouvé du resultat de la requette par un mysql_fetch...
$ligne=mysql_fetch_array($res);
$qte_dispo=$ligne['qte'];
$qte1=$_GET['qte1'];
//Trace que tu enlèves après bien sur
echo 'Qté demandée: '. $qte1.'qte dispo: '.$qte_dispo;
if($qte1 > $qte_dispo)
{
echo '<script type="text/javascript">alert("qte indisponible")</script>';
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Alain_42
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
901
30 mai 2012 à 13:40
30 mai 2012 à 13:40
une autre solution sans javascript, avec réaffichage des données précédemment saisie dans le formulaire et du message en dessous du formulaire
<?php
$base=mysql_connect('localhost', 'root', '');
mysql_select_db('monapplication', $base);
//init variables
$qte1="";
$article="";
$message="";
////cette partie ci dessous doit être avant la partie formulaire
if(isset($_GET['envoyer']))
{
$sql="SELECT qte FROM articles WHERE Des_A= '".mysql_real_escape_string($_GET["article"])."'";
//mysql_real.... c'est pour securiser la requette sql
$res = mysql_query($sql);
$ligne=mysql_fetch_array($res);
$qte_dispo=$ligne['qte'];
$qte1=$_GET['qte1'];
if($qte1 > $qte_dispo)
{
$message="Quantitée indisponible !";
}
}
////
?>
<form name="form1" action="comM.php" method="Get">
<table>
<tr>
<td>
<label ><strong><font color="#0097C5">Article:</font></strong></label>
</td>
<td>
<select name="article" id="article" style="width: 170px">
<?php
$SQL = "SELECT Des_A FROM articles WHERE titre_A NOT LIKE 'pack'";
$res = mysql_query($SQL);
while($val=mysql_fetch_array($res)) {
$option='<option value="'.$val['Des_A'].'"';
if($article==$val['Des_A']) $option.= ' selected="selected"'; //ça c'est pour garder la selection au réaffichage
$option.=' >'.$val['Des_A'].'</option>';
echo $option;
}
?> </select>
</td>
</tr>
<tr>
<td>
<label ><strong><font color="#0097C5">Qte:</font></strong></label>
</td>
<td>
<input type="text" name="qte1" id="qte1" value="<?php echo $qte1; ?>" />
<!-- ci dessus au premier affichage du formulaire $qte1="" donc value= vide, au réaffichage on a value= qté saisie précédemment -->
</td>
</tr>
<?php
//affichage du message eventuel si qté pas dispo
if($message !="") echo '<tr><td colspan="2"></td><font color="red">'.$message.'</font></tr>';
?>
</table>
<div id="templatemo_login">
<input type="submit" name="envoyer" value="envoyer" class="button"/>
</div>
28 mai 2012 à 01:12
Car le formulaire comporte l'attribut method paramétré à get
28 mai 2012 à 23:30