Page 1 sur 1

Requete en fonction d'un menu deroulant

Posté : 02 mars 2006, 11:57
par newbee
Bonjour à tous!
C'est encore moi :)

Encore un pitit probleme (sinon je ne posterais pas...) :
- J'ai un page avec un menu deroulant pour afficher mes champs.
<form action="affich_card.php" method="get" id="chgdept">
		<select name="colla">
		<?
		while($data = mysql_fetch_assoc($result))
			{
		?>
			<option value="<?php echo($data['nom']); ?>"> <?php echo($data['nom']." - ".$data['prenom']); ?> </option>
		<?
			}
		?>
		<br>
		<input type="submit" name="ok" value="Envoyer">
		</select> 
</form>
Ce qui me retourne dans ma barre d'adresse, apres validation par le bouton :
http://127.0.0.1/[...]/affich_card.php?colla=un_nom&ok=Envoyer

Puis dans ma page affich_card.php :
$query = 'SELECT * FROM collaborateurs WHERE nom="'.$colla.'"';
Ma page affich_card ne me retourne rien.

C'est tout simple mais je ne comprends pas pourquoi ça n'affiche pas...


une ch'tite aide?

Posté : 02 mars 2006, 11:59
par charabia
Voici la chtite aide :langue:
$query = 'SELECT * FROM collaborateurs WHERE nom="'.$_GET['colla'].'"';

Posté : 02 mars 2006, 12:03
par newbee
... toujours la même chose... c'est à dire rien du tout :cry:

Posté : 02 mars 2006, 12:05
par charabia
Que donne cette requête si tu la fait directement sous phpMyAdmin ? As tu un résultat ?

Vérifies aussi que dans l'url tu as bien un nom après ta variable colla.

Re: Requete en fonction d'un menu deroulant

Posté : 02 mars 2006, 12:09
par KooKiz
Ferme ton select avant de mettre le champs input :
<form action="affich_card.php" method="get" id="chgdept">
		<select name="colla">
		<?
		while($data = mysql_fetch_assoc($result))
			{
		?>
			<option value="<?php echo($data['nom']); ?>"> <?php echo($data['nom']." - ".$data['prenom']); ?> </option>
		<?
			}
		?>
		</select> 
		<br>
		<input type="submit" name="ok" value="Envoyer">
</form>
Si ça ne marche toujours pas, fais nous un copier coller du code contenu dans affich_card :)

Re: Requete en fonction d'un menu deroulant

Posté : 02 mars 2006, 12:15
par charabia
Ferme ton select avant de mettre le champs input
Bien vu kookiz :wink: , je suis passé au travers lol

Posté : 02 mars 2006, 12:25
par newbee
Whaou, ça marche! J'ai trouvé mon erreur en recopiant le code de ma page (merci KooKiz ;) ).
L'erreur était que j'avais une ligne $data=mysql_fetch_array($result); que je n'avais pas viré, celle ci étant avant mon while, donc conflit.


Merci à vous deux pour votre réactivité!

Et pour ceux que ça intéresse :
La page menu :
<?php
		$query="SELECT * FROM collaborateurs ORDER BY 'nom'";
		$result=mysql_query($query, $connect);
?>
<form action="affich_card.php" method="get" id="chgdept">
		<select name="colla">
		<?
		while($data = mysql_fetch_assoc($result))
			{
		?>
			<option value="<?php echo($data['nom']); ?>"> <?php echo($data['nom']." - ".$data['prenom']); ?> </option>
		<?
			}
		?>
		</select> 
		<br>
		<input type="submit" name="ok" value="Envoyer">
		
</form>
et la page affich_card :
<?
	$query = 'SELECT * FROM collaborateurs WHERE nom="'.$_GET['colla'].'"';
	$result=mysql_query($query, $connect);
?>
[...]
<?
while($data=mysql_fetch_assoc($result))
	{
// code
	}
?>

Thanks :merci: