récupérer le choix d'un menu déroulant

Invité
Invité n'ayant pas de compte PHPfrance

14 avr. 2005, 16:03

Bonjour tout le monde,
je voudrais savoir comment récupérer le choix que l'utilisateur a fait dans un menu déroulant (rempli à l'aide d'une table) sur une autre page... :?:
je sais pas si j'ai été clair, merci d'avant pour votre aide.

Eléphanteau du PHP | 24 Messages

14 avr. 2005, 16:18

bon, j'commente pas, mais si t'as des problèmes n'hésite pas, je te mets un exemple :

Code pour la dropdown :
<?php
	require_once('../../includes/connexion.php'); //DBConnexion include
?>
<html>
	<body>
             <form action="" method="post" name="add">
		<p>Privil&egrave;ge
			<select name="privilege" id="privilege">
				<?php
					mysql_select_db($database_semdb, $semdb); //DB Connexion
					$query_priv="SELECT * FROM priv";
					$result_priv=mysql_query($query_priv);
					mysql_close();
					$num_priv=mysql_num_rows($result_priv);

					while($row_priv=mysql_fetch_array($result_priv)) {
						$id_priv[]=$row_priv["id_priv"];
						$nom_priv[]=$row_priv["nom_priv"];
					}
					for($i_priv=0;$i_priv<$num_priv;$i_priv++) { //Fill dropdownlist
						printf("<option value=\"$id_priv[$i_priv]\">$nom_priv[$i_priv]</option>");
					}
				?>
			</select>
		</p>
                <p><input type="submit" name="Submit" value="Cr&eacute;er cet utilisateur"></p>
			</form>
	</body>
</html>
Piet

Invité
Invité n'ayant pas de compte PHPfrance

14 avr. 2005, 16:34

oula j'ai pas tout compris là, faut que je teste...

en fait le menu déroulant je l'ai mais je ne sais pas comment faire pour utiliser le choix de l'utilisateur comme paramètre dans une requête sql dans une autre page.... :/ je sais pas si je me suis fait comprendre..

Eléphant du PHP | 168 Messages

18 avr. 2005, 13:32

pourrai tu nous montrer ton code g peut etre ta solution sous les yeux cela va dependre de ton code pour le menu deroulant
:wink:
Tous les hommes aspirent à être heureux, mais personne ne s'entend sur la définition du bonheur.
Celui qui a un ami véritable n'a pas besoin d'un miroir.

Invité
Invité n'ayant pas de compte PHPfrance

18 avr. 2005, 15:23

1ère page où l'utilisateur sélectionne dans un menu déroulant un nom de fabricant dont la liste vient d'une requête :
$sql = "SELECT fab_nom FROM fabricant ORDER BY fab_nom ASC";
$r_fablist=mysql_query("$sql") or die("Invalid query : ".mysql_error());
echo "selectionner un fabricant : <form name='fablist' action='listprod_fab.php' method='POST'><select name='example'>";
echo "<option value=''>Sélectionner un fabricant</option>";
while ($result = mysql_fetch_array($r_fablist))
{
	echo "<option value='choix'>".$result[0]."</option>";
}

2ème page où je dois récupérer le choix fait pour l'utiliser dans une requête :
$sql = "SELECT p_nom FROM produit, fabricant WHERE produit.fab_num=fabricant.fab_num AND fab_nom='choix_récupéré'";
	$result=mysql_query("$sql") or die("Invalid query : ".mysql_error());
	echo "<table border=1><tr>";
	while ($resultat = mysql_fetch_array($result))
	{
		echo "<td>".$resultat[0]."</td>";
	}
	echo "</tr></table>";
j'espère que ça te convient.. :)
Merci :D

Eléphant du PHP | 191 Messages

18 avr. 2005, 17:41

Utilise une methode POST.......ca devrait etre plus facile

Invité
Invité n'ayant pas de compte PHPfrance

18 avr. 2005, 18:29

tu peux me montrer rapidement ? j'ai essayé mais ça n'a pas fonctionné :/
en plus vu que le choix que l'utilisateur fait est dynamique...

Invité
Invité n'ayant pas de compte PHPfrance

19 avr. 2005, 09:35

Il faut que tu face un <form method=post action='ta_deuxieme page'>

et que tu recupere la donnée de cette facon : $POST_ma variable,sinon montre moi ton code avec ta methode post ....ça sera plus formateur......et plus facile 8)

Invité
Invité n'ayant pas de compte PHPfrance

19 avr. 2005, 09:53

1ère page où l'utilisateur sélectionne dans un menu déroulant un nom de fabricant dont la liste vient d'une requête :
$sql = "SELECT fab_nom FROM fabricant ORDER BY fab_nom ASC";
$r_fablist=mysql_query("$sql") or die("Invalid query : ".mysql_error());
echo "selectionner un fabricant : <form name='fablist' action='listprod_fab.php' method='POST'><select name='example'>";
echo "<option value=''>Sélectionner un fabricant</option>";
while ($result = mysql_fetch_array($r_fablist))
{
	echo "<option value='choix'>".$result[0]."</option>";
}

2ème page où je dois récupérer le choix fait pour l'utiliser dans une requête :
$sql = "SELECT p_nom FROM produit, fabricant WHERE produit.fab_num=fabricant.fab_num AND fab_nom='choix_récupéré'";
	$result=mysql_query("$sql") or die("Invalid query : ".mysql_error());
	echo "<table border=1><tr>";
	while ($resultat = mysql_fetch_array($result))
	{
		echo "<td>".$resultat[0]."</td>";
	}
	echo "</tr></table>";
par contre kand je fais un $_POST['choix'] à la place de 'choix_récupéré dans la deuxième page il me dit qu'il ne connait pas 'choix'....

Eléphant du PHP | 191 Messages

19 avr. 2005, 10:33

[quote]par contre kand je fais un $_POST['choix'] à la place de 'choix_récupéré dans la deuxième page il me dit qu'il ne connait pas 'choix'....
[/quote]

essaye de recuperer du style

var = $_POST['choix'] puis tu insert $var à ta requete
tu as la splendeur d'un enterrement de première class e

Invité
Invité n'ayant pas de compte PHPfrance

19 avr. 2005, 11:31

il me met ça : Undefined index: choix
quand je créé la variable ... ça veut dire koi ?

Invité
Invité n'ayant pas de compte PHPfrance

19 avr. 2005, 11:44

c'est bon tout est réglé, erreur bête :/
j'avais pris la 'value' de <option> au lieu du <select>...
merci pour votre aide :p

Invité
Invité n'ayant pas de compte PHPfrance

19 avr. 2005, 11:45

t'aurais pas le code des deux pages parce que là je vois pas trop bien........t'as essayer la solution de piet elle me parait pas mal.......... :-k

Eléphant du PHP | 191 Messages

19 avr. 2005, 11:55

Desolé j'avais pas vu...........Donc tu peux mettre RESOLU....... =D>
tu as la splendeur d'un enterrement de première class e

Eléphant du PHP | 98 Messages

19 avr. 2005, 11:59

j'étais pas loggé j'peux pas :oops: