Question

J'essaie de poster un tableau rempli de cases à cocher et de l'ouvrir à la page suivante.

Cela ne me donne que le dernier résultat, tout le monde sait pourquoi? ou comment y remédier?

<form name="input" action="createevent.php" method="post">

Event title: 
<input type="text" name="Eventtitle" size="20">
<br>Event Description 
<input type="text" name="Description" size="20">
<br>
Please select the days that you are free to arrange this meeting.<br>
Monday
<input type="checkbox" name="day" value="Monday" />
<br />
Tuesday
<input type="checkbox" name="day" value="Tuesday" />
<br />
Wednesday
<input type="checkbox" name="day" value="Wednesday" />
<br />
Thursday
<input type="checkbox" name="day" value="Thursday" />
<br />
Friday
<input type="checkbox" name="day" value="Friday" />
<br />
Saturday
<input type="checkbox" name="day" value="Saturday" />
<br />
Sunday
<input type="checkbox" name="day" value="Sunday" />
<br /><br />
<input type="submit" value="Submit">

et peu importe le nombre sélectionné, il ne donne qu'un seul résultat sur la page suivante. $ day = sizeof ($ _ POST ['day']);

ne donne jamais qu'une réponse '1'. Et quand je les aurai à la page suivante, je voudrai pouvoir les sélectionner séparément.

Merci!

Était-ce utile?

La solution

PHP ne créera automatiquement une valeur POST dans un tableau que s'il se termine par [] .

Il vous faut donc name = "jour []" au lieu de name = "jour" .

(Notez que cela fonctionne pour toutes les valeurs POST, ainsi qu'avec les tableaux associatifs au lieu de l'incrémentation automatique. Vous pouvez faire name = "foo [bar]" et vous ' d obtenir $ _ POST ['foo'] ['bar'] ...)

Autres conseils

Si vous obtenez un seul résultat, c'est parce que vous publiez plusieurs champs du même nom. Par conséquent, le dernier remplace par défaut tous les champs précédents. Essayez de créer un tableau dans votre code HTML comme ceci:

Monday
<input type="checkbox" name="day[]" value="Monday" />
<br />
Tuesday
<input type="checkbox" name="day[]" value="Tuesday" />
<br />
Wednesday
<input type="checkbox" name="day[]" value="Wednesday" />

et ainsi de suite dans la liste ...

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top