PB récupération valeur d'un select

Petit nouveau ! | 3 Messages

19 mai 2010, 20:08

bonjour,
je bloque depuis un moment sur la récupération de la valeur d'un select, je dois récupérer le nom d'une salle pour ensuite afficher differentes informations sur cette salle; voilà ma premiere page du formulaire
<form method="get" action="detailvoyage.php">
			<p><h1>Choisissez votre salle</h1></p>
			<select name="lst_salle">
				<?php
					
					$requete="SELECT nomSalle FROM salle ORDER BY nomSalle";
					$curseur=mysql_query($requete);
					
					for($i=1;$i<=mysql_num_rows($curseur);$i++){
						$nuplet=mysql_fetch_array($curseur);
						echo("<option value=");
						echo($nuplet["nomSalle"]);
						echo(">");
						echo($nuplet["nomSalle"]);
						echo("</option></br>");
					}
				mysql_close();		
				?>
			</select>
			<input type="submit" value="Saisir les données">
		</form>
et elle est envoyée à cette page
<?php
	
			$salle=$_GET['lst_salle'];
		
		$requete="SELECT dateConcert, prenomArtiste, nomArtiste 
					FROM salle s, concert c, artiste a 
					WHERE s.nomSalle='$salle'
					and s.noSalle=c.noSalle
					and c.noArtiste=a.noArtiste
					order by c.dateConcert, a.noArtiste";
			$curseur=mysql_query($requete);
			
			
			while($data=mysql_fetch_array($curseur)){
			echo"<table border='1' width='30%'><th>'Artiste'</th><th>'Date'</th><tr><td width='50%'>";
			echo $data['prenomArtiste'];
			echo " ";
			echo $data['nomArtiste'];
			echo "</td><td>";
			echo $data['dateConcert'];
			echo "</td></tr></table>";
			}
			
		?>
		
		<?php mysql_close(); ?>
Je n'arrive pas à récupérer le nom d'un salle rentrer dans le formulaire et le pire c'est qu'il n(y a aucun message d'erreur!!

Mammouth du PHP | 661 Messages

19 mai 2010, 20:37

1. pourquoi ne pas utiliser un While dans la premiere requete ?
2. le HTML est il bien construit ? au niveau des <option value=''>... </option>
3. fait un print_r($_GET) pour voir ce que tu reçois ...
4. pourquoi par GET ? et non par POST ?

@+

Petit nouveau ! | 3 Messages

19 mai 2010, 20:42

Le html est bien construit puisque la liste deroulante affiche toutes les données de ma table, ou dois je faire le print_r($_GET)? je débute en php. Pour le GET je vais le mettre en POST mais je pense pas que ça vienne de là.

Mammouth du PHP | 661 Messages

19 mai 2010, 21:47

Le html est bien construit puisque la liste deroulante affiche toutes les données de ma table,
ça ne veux rien dire ^^ regarde le code source, tu pourrais avoir des surprises :D

2. pour le print_r($_GET) place le avant : $salle=$_GET['lst_salle'];
il devrait en théorie t'afficher un truc du style array( [lst_salle] => 'la valeur que tu as choisi' )

3. le fait de changer de GET en POST ne résoudra en rien le problème, ça évitera juste de passer ton formulaire dans l'url !...

Petit nouveau ! | 3 Messages

20 mai 2010, 12:16

je viens de comprendre il ne sélectionne que le premier mot dans le select, par exemple pour la salle"le zenith" il ne prend que "le"!!! comment faire ?

Mammouth du PHP | 661 Messages

20 mai 2010, 17:43

regardes ton code source !....