Recupérer données d'un select Multiple en php [Résolu/Fermé]

Signaler
-
Messages postés
151
Date d'inscription
mercredi 20 avril 2016
Statut
Membre
Dernière intervention
9 juillet 2020
-
Je cherche à récupérer les données d'un select mutiple à l'aide de php. Pour cette liste voici le code pour faire afficher les infos a partir d'une base MySQL :
echo "<select name='EService_ft' size='4' multiple>";
$MyService_FT = new Service_FT;
$Result8 = mysql("$db","SELECT * FROM Service_FT");
$MyService_FT->getnum($Result8);
while ($MyService_FT->z < $MyService_FT->num) {
$MyService_FT->readrow($Result8);
echo "<option value='$MyService_FT->Service_FT'> $MyService_FT->Service_FT";
}
echo "</select>";

Lorsque je fais une sélection multiple ma valeur retournée est la dernière sélectionnée.

Si vous avez des info pour récupérer les info simplement, ou s'il y a une astuce pour récupérer les informations de cette liste de sélection multiple merci de m'en avertir.

merci d'avance et bon courage à tous.

3 réponses


voici comment déclarer le select
(exemple de choix d'occasion pour faire des cadeaux)
 <select name="occasion[]" multiple size="5">
  <option value="1">Anniversaire</option>
  <option value="2">Fête des mères</option>
  <option value="3">Fête des pères</option>
  <option value="4">Saint valentin</option>
  <option value="5">Toute occasion</option>
 </select>

important le nom du select doit être suivit de crochets ouvrant/fermant "nomselect[]"
il faut indiquer l'attribut multiple dans le select
ensuite dans une autre page : récupération des données :
if(isset($_POST['occasion']) && !empty($_POST['occasion'])){
	$Col1_Array = $_POST['occasion'];
	print_r($Col1_Array);
        foreach($Col1_Array as $selectValue){
		//affichage des valeurs sélectionnées
                echo $selectValue."<br>";
	}
}

la variable représentant le select se récupère comme une variable à une valeur. le print_r permet de s'appercevoir que cette variable est une tableau.
Bonne continuation
221
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 56962 internautes nous ont dit merci ce mois-ci

Messages postés
23
Date d'inscription
dimanche 7 décembre 2008
Statut
Membre
Dernière intervention
21 décembre 2012

comment insérer le donne de tableau dans la base de donné jai essayé
$tag = $selectValue;
mysql_query("insert into table values $tag");
merci c'était le nom qui pose problème il faut mettre les []
pourquoi le con Dreamweaver ne met pas cela et on le paye en plus
meme pas un merci?
j'ai essayé ceci et ça na marche pas
>> Essaies ce code là ! Chez moi, ça marche nickel !

<?php
if(isset($_POST['valider']))
{
if(($_POST['occasion']) && !empty($_POST['occasion'])){
$Col1_Array = $_POST['occasion'];
//print_r($Col1_Array);
foreach($Col1_Array as $selectValue){
//affichage des valeurs sélectionnées

echo $selectValue."<br>";
}
}
}
?>

<html>
<body>
<form method = "POST">
<select name="occasion[]" multiple size="5">
<option value="Anniversaire">Anniversaire</option>
<option value="Fête des mères">Fête des mères</option>
<option value="Fête des pères">Fête des pères</option>
<option value="Saint valentin">Saint valentin</option>
<option value="Toute occasion">Toute occasion</option>
</select>

<input name="valider" type="submit" value="Valider">

</form>
</body>
</html>
Svp quel est le code qui me permet de lire des infos saisies dans un formulaire à partir d'une base de données puis de les afficher.
SAbrine je ne comprends pas ta question

je reprend un peu la question
si je veux utiliser un bouton select avec des option qui ont des valeurs correspondantes dans ma base de données. comment je fait svp
Messages postés
151
Date d'inscription
mercredi 20 avril 2016
Statut
Membre
Dernière intervention
9 juillet 2020
3
merci pour l'exemple ci dessus tres pratique