Liste déroulante GET [PHP]

Résolu/Fermé
Signaler
Messages postés
21
Date d'inscription
dimanche 18 avril 2010
Statut
Membre
Dernière intervention
3 août 2013
-
 ReDLoG -
Bonjour,

J'ai crée une liste en PHP qui recense tous les résultats de nom par ordre alphabétique de ma BDD seulement bien que la liste soit fonctionnel tous les résultats s'affichant correctement seulement j'essaye d'envoyer le paramètre de selection avec une methode GET dans l'URL mais lorsque je clique sur submit rien ne ce passe le navigateur recharge seulement la page peut importe la page d'action voici le code
<form method="get" action="upload.php?gp=anime&post=true">
<input type="hidden" value="anime" name ="gp"/>
<input type="hidden" value="true" name="post"/>
<select name ="CreateG">
<?php
$id=0;
while ($id != $dID)
{
$name3 = $bdd->query('SELECT Gname FROM galeriea ORDER BY Gname LIMIT ' . $id . ',' . $dID . ' ');
$name2 = $name3->fetch();
$name = $name2['Gname'];
?><option value="<?php echo $name; ?>" name="selection"><?php echo $name; ?></option> ;<?php
$id++;
}
?>
</select>
<input type="submit" id="Gchoose"/>
</form>


1 réponse

Salut, pourquoi un attribut "action=..." dans un formulaire GET?
GET est censé renvoyer vers la même page non? En tout cas c'est le cas pour un formulaire, passez e POST si vous voulez envoyer vers une autre page.
Messages postés
21
Date d'inscription
dimanche 18 avril 2010
Statut
Membre
Dernière intervention
3 août 2013

Merci, malheureusement le problème est toujours présent =/
Quand j'affiche $_POST['CreateG'] sans changer la method du formulaire en POST il m'affiche le résultat
>> le navigateur recharge seulement la page peut importe la page d'action
Est-ce que la page cible du formulaire (upload.php) contient un script PHP permettant de récupérer la valeur $_GET['CreateG'] ?
Ceci n'est pas nécessaire => upload.php?gp=anime&post=true
car tu as la possibilité de récupérer ces valeurs par les champs hidden de ton formulaire, donc ton script doit récupérer les valeurs suivantes :
- $_GET['gp']
- $_GET['post']
- $_GET['CreateG']
Ensuite cette syntaxe n'est pas reconnue en HTML (name="selection") :
<option value="<?php echo $name; ?>" name="selection"><?php echo $name; ?></option>

Donc simplifies ton code ainsi :
<form method="get" action="upload.php">
	<input type="hidden" value="anime" name ="gp" />
	<input type="hidden" value="true" name="post" />
	<select name="CreateG">
		<?php
		$id=0; 
		while ($id != $dID) {
			$name3 = $bdd->query('SELECT Gname FROM galeriea ORDER BY Gname LIMIT ' . $id . ',' . $dID . ' ');
			$name2 = $name3->fetch();
			echo '<option value="'.$name2['Gname'].'">'.$name2['Gname'].'</option>';
			$id++; 
		} 
	?></select>
	<input type="submit" id="Gchoose" name="Choice" value="Choix" />
</form>