Liste à choix multiples

Eléphant du PHP | 440 Messages

14 janv. 2007, 16:43

Bonjour,

dans ma base, j'ai des listes à choix multiples (set). Et dans mon formulaire, j'ai le champ équivalent. Pourtant, je ne reçois que le premier choix sélectionné.

Qui a la réponse à ce problème ? Merci.
Débutant complet en php/mysql. Merci pour votre aide.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

14 janv. 2007, 17:06

Qui a la réponse à ce problème ?
Ma vieille voisine certainement... tu sais pas cliquer :roll:
:arrow:

Toujours montrer le bout de code qui pose problème.
Parce qu'il peut y en avoir un paquet de réponses dont tu n'aura rien à faire :wink:

Mais je dirais qu'il te manque les [] à l'attribut name.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 440 Messages

14 janv. 2007, 17:29

dans un premier temps, le formulaire m'envoyait les infos par mail. Et je recevais tout correctement.
dans un second temps, j'ai modifié "action" pour recevoir sur une page php. Et c'est là que débute le problème.
Débutant complet en php/mysql. Merci pour votre aide.

Administrateur PHPfrance
Administrateur PHPfrance | 3088 Messages

14 janv. 2007, 17:43

C'est très désagréable de constater que les gens ne prennent pas le temps de lire ce qu'on écrit :(

Eléphant du PHP | 440 Messages

14 janv. 2007, 17:53

Code : Tout sélectionner

<select name="THEMES" size="10" multiple>
tu veux dire qu'il faut écrire ["THEMES"] ?
Débutant complet en php/mysql. Merci pour votre aide.

ViPHP
ViPHP | 2144 Messages

14 janv. 2007, 17:55

non, il faut écrire THEMES[]
Et ce qui t'était demandé, c'est de nous montrer le code, sans cela, on ne peut pas deviner où est ton erreur... :wink:

Eléphant du PHP | 440 Messages

14 janv. 2007, 18:05

Code : Tout sélectionner

<select name=public[] size="5" multiple> <option value="" selected>Choisissez (choix multiples en cliquant sur Ctrl)</option> <option value=Salariés>Salariés</option> <option value=Demandeurs>Demandeurs d'emplois </option> <option value=Etudiants>Etudiants</option> <option value=Alternance>Alternance </option> </select>
j'ai modifié name="PUBLIC" en name=PUBLIC[]
Mais il doit y avoir autre chose car ça ne va pas.
Débutant complet en php/mysql. Merci pour votre aide.

ViPHP
ViPHP | 2144 Messages

14 janv. 2007, 18:27

Et le code qui récupère les données, on peut le voir ?? 8-) 8-) 8-) 8-)

Eléphant du PHP | 440 Messages

14 janv. 2007, 18:29

if(isset($_POST['PUBLIC']))      $url=$_POST['PUBLIC'];
else      $PUBLIC="";
Le voici
Débutant complet en php/mysql. Merci pour votre aide.

ViPHP
ViPHP | 2144 Messages

14 janv. 2007, 18:34

Le fait de rajouter des [] après le nom du champ, en fait un tableau, que tu dois donc parcourir pour récupérer les différentes valeurs sélectionnées.
Regardes du côtés de la fonciton foreach, pour parcourir les valeurs sélectionées.

Eléphant du PHP | 440 Messages

14 janv. 2007, 18:42

j'ai trouvé ça :
foreach(array_expression as $value)  commandes
mais ça s'intègre comment dans mon code ?
Débutant complet en php/mysql. Merci pour votre aide.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

14 janv. 2007, 19:30

Ho, tu veux bien réfléchir un peu par toi même !!
On te donne une indication tu reviens 10min après en disant j'ai trouvé la doc.

As tu essayé de bidouiller un script avec ça ?!
Tu sais pas comment ? regarder un peu la doc c'est très bien expliqué et plein d'exemples.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

ViPHP
ViPHP | 1996 Messages

14 janv. 2007, 19:56

Le gronde pas il est jeune ...

La réponse :
if(isset($_POST['PUBLIC']))     
$url=$_POST['PUBLIC'];
else      $PUBLIC="";

foreach ($url as $cle => $valeur) {
           echo $valeur.'<BR>';
}

 
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

ViPHP
ViPHP | 2144 Messages

14 janv. 2007, 20:15

Le gronde pas il est jeune ...
Le problème, c'est pas d'être jeune, on lui a donner les éléments pour parvenir à ce qu'il souhaite avoir et on a pas l'impression qu'il a vraiement chercher, d'autant plus que la doc sur le net comprend quasiment toujours des exemples pour comprendre comment ça marche.
C'est en se cassant un peu la tête qu'on apprend, pas en attendant que le code tombe du ciel :wink:

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

14 janv. 2007, 22:21

Le gronde pas il est jeune ...
Comme les pti chiens... je ne fait que de montrer mes dents :mrgreen:
if(isset($_POST['PUBLIC']))     
$url=$_POST['PUBLIC'];
else      $PUBLIC="";

foreach ($url as $cle => $valeur) {
           echo $valeur.'<BR>';
}
 

sauf que là il va nous revenir en disant que ça plante...
Si $_POST['PUBLIC'] n'existe pas $url ne va pas exister et donc erreur pour foreach. :wink:
Mais l'idée est la comme elle l'est dans la doc.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute