Comment créer un tableau dans une balise <form> HTML ?
<<<
Comment puis-je récupérer le résultat d'un champs HTML Comment puis-je passer une variable de Javascript vers PHP ?
>>>

11.8 PHP et HTML
11 FAQ : foire Aux Questions
 Manuel PHP

Quel encodage/décodage ai-je besoin lors du passage d'une valeur via un formulaire/une URL ?
J'essaye d'utiliser <input type="image"> mais les variables
Comment créer un tableau dans une balise <form> HTML ?
-> Comment puis-je récupérer le résultat d'un champs HTML
Comment puis-je passer une variable de Javascript vers PHP ?

11.8.4 Comment puis-je récupérer le résultat d'un champs HTML

Le champ SELECT multiple en HTML permet à l'utilisateur de sélectionner plusieurs éléments d'une liste. Ces éléments seront transmis à la page pointée par l'attribut action de la balise form . Le problème est que ces éléments sont tous passés avec le même nom de variable.


<select name="var" multiple="yes">
Chaque option sélectionnée arrivera au mécanisme de traitement sous la forme :

var=option1
var=option2
var=option3
Chaque option effacera donc le contenu de la précédente variable $var . La solution consiste à utiliser un tableau de variables dans cet élément de formulaire HTML, par exemple :

<select name="var[]" multiple="yes">
Cela fera que PHP traitera $var comme un tableau de variables et que chaque assignement de valeur à var[] ajoutera un index au tableau. La première option choisie sera mise dans $var[0] , la suivante sera mise dans $var[1] , etc. La fonction count peut être utilisée pour déterminer combien d'options ont été sélectionnées, et la fonction sort peut être utilisée pour trier le tableau, si nécessaire.

Notez que si vous utilisez Javascript, [] dans le nom de l'élément peut vous poser problème lorsque vous tenterez d'accéder à celui-ci par son nom. Utilisez plutôt l'indice numérique de l'élément dans ce cas, ou bien utilisez les simples guillemets pour entourer cet élément, comme :


variable = documents.forms[0].elements['var[]'];

<< Comment puis-je récupérer le résultat d'un champs HTML >>
Comment créer un tableau dans une balise <form> HTML ? PHP et HTML Comment puis-je passer une variable de Javascript vers PHP ?