<select name="field_name" id="field_name">
<option value="value1">Option 1</option>
<option value="value2">Option 2</option>
<option value="value3">Option 3</option>
...
</select>
Le code HTML est indiqué pour information. Il est généré automatiquement par le script phpMyForm.
Attributs
Description des divers attributs possibles pour le champ de type select.
Seul l'attribut field_type est requis.
Si les autres attributs ne sont pas définis, la valeur défaut est prise en compte.
field_type
[field_name]
field_type=select
...
Ces deux lignes du fichier form_definition.ini sont les seules requises.
mod
[field_name] ...
;défaut : default
mod=group_start
Valeurs possibles :
- default
- group_start
- group_start_end
- group_inside
- group_end
- switch (field_type : checkbox, radio, select)
- group_switch_start
- group_switch_start_end
function_ini
[field_name]
...
;défaut : ''
function_ini=my_function
Définition d'une fonction qui va générer dynamiquement le tableau associatif php issu normalement du parsing du fichier ini défini dans la section ini.
Cette fonction (si définie) prime sur l'utilisation du fichier ini contenu dans le dossier défaut form_name/ini.
ini
[field_name]
...
;défaut : field_name.ini
ini=my_file
- Nom fichier ini sans extension contenant les options.
- Fichier ini dans le dossier form_name/ini.
Structure du fichier ini
Sections du fichier ini : select est obligatoire.
Le reste suivant select est libre, mais doit-être différent pour chaque option.
[to_select]
option=--- Sélectionner une option ---
[select_1]
option=option 1
value=value1
[select_2]
group_start=Nom groupe
option=option 2
value=value2
[select_3]
option=option 3
value=value3
[select_4]
group_end="/optgroup"
option=option 4
value=value4
[select_5]
option=option 5
value=value5
[select_6]
option=option 6
value=value6
...
[custom]
option=--- Valeur personnalisée ---
Description des sections du fichier ini
- Section [to_select]
- option : Si on ne veut pas d'option sélectionnée d'office.
- Section [select...]
- value : Attribut value de <option>. Si omis une value du type field_name_option_value_n est générée automatiquement.
- option : Si omis, la valeur de value est utilisée.
- group_start : dans la 1ère option du groupe (nom du groupe).
- group_end : /optgroup dans la dernière option du groupe.
- Section [custom]
- option : Si omis, valeur defaut : Valeur personnalisée.
select
[field_name]
...
select.to_select.option="--- selection ---"
select.select_1.option=option 1
select.select_1.value=option1
select.select_2.group_start=Nom groupe
select.select_2.option=option 2
select.select_2.value=option2
select.select_3.option=option 3
select.select_3.value=option3
select.select_4.group_end="/optgroup"
select.select_4.option=option 4
select.select_4.value=option4
select.select_5.option=option 5
select.select_5.value=option5
select.select_6.option=option 6
select.select_6.value=option6
...
select.custom.option=--- Valeur personnalisée ---
Définition des diverses options select.
Cela prime sur l'utilisation du fichier ini externe si défini.
Voir section ini pour description option, value, group_start, group_end.
Dans select.select_1.xxxxx=xxxxx, select est obligatoire. Le reste suivant select est libre, mais doit-être différent pour chaque option.
custom_field
[field_name]
...
custom_field=field_name_01
ID d'un champ text ou textarea.
Le champ text (ou textarea) doit avoir l'attribut custom à 1.
Exemple :
[select01]
field_type=select
custom_field=select_custom01
...
[select_custom01]
field_type=text
custom=1
...
default
[field_name]
...
;defaut : ''
default=value default
Valeur défaut du champ.
label
[field_name]
...
;defaut : ''
label=Texte du label
Texte affiché dans partie gauche (*)
Uniquement avec mod :
- default
- switch
- group_start
(*) Voir les différentes options (col_label et pos_label) d'affichage du label dans les options du formulaire
col_label
[field_name]
...
;défaut : 1
col_label=0
La colonne label ne sera pas affichée.
Si le texte de l'attribut label est défini, il sera ignoré.
A la différence de l'option col_label qui concerne tous les champs du formulaire, l'attribut col_label ne concerne que le champ courant.
heading_group
[field_name]
...
;defaut : ''
heading_group=Lorem ipsum dolor sit amet, consectetur adipisicing elit.
Texte affiché au dessus du 1er champ d'un groupe.
Uniquement avec mod :
- group_start
- group_start_end
- group_switch_start
- group_switch_start_end
groupe_marge
[field_name]
...
;defaut : ''
group_marge=30px
Marge gauche (syntaxe CSS) d'un groupe de champs commutable.
Uniquement avec mod :
- group_switch_start
- group_switch_start_end
group_hidden
[field_name]
...
;défaut : 0
group_hidden=1
Le groupe de champs commutable sera désactivé et non visible.
Uniquement avec mod switch.
text_before_data
[field_name]
...
;defaut : ''
text_before_data=Lorem ipsum dolor sit amet, consectetur adipisicing elit.
Texte affiché en haut du bloc data.
Uniquement avec mod :
- default
- switch
- group_start
text_after_data
[field_name]
...
;defaut : ''
text_after_data=Lorem ipsum dolor sit amet, consectetur adipisicing elit.
Texte affiché en bas du bloc data.
Uniquement avec mod :
- default
- group_switch_start_end
- group_end
text_top
[field_name]
...
;defaut : ''
text_top=Texte affiché au dessus du champ
text_before
[field_name]
...
;defaut : ''
text_before=Texte affiché devant le champ
text_after
[field_name]
...
;defaut : ''
text_after=Texte affiché après le champ
text_bottom
[field_name]
...
;defaut : ''
text_bottom=Texte affiché au-dessous du champ
image
[field_name]
...
;defaut : ''
image=http://www.mon-site.com/my-image.png
Url de l'image affichée devant le champ.
- Extension : png, gif, jpg, ...
- Dimension maximum : 24px × 24px (L'image sera ajustée dans le cas contraire)
class
[field_name]
...
class=class1 class2
Si plusieurs class, les séparer par un espace.
<select class="class1 class2" name="field_name" id="field_name">
<option value="value1">Option 1</option>
<option value="value2">Option 2</option>
<option value="value3">Option 3</option>
...
</select>
class_opt
[field_name]
...
class_opt=class1 class2
Si plusieurs class, les séparer par un espace.
<select name="field_name" id="field_name">
<option class="class1 class2" value="value1">Option 1</option>
<option class="class1 class2" value="value2">Option 2</option>
<option class="class1 class2" value="value3">Option 3</option>
...
</select>
style
[field_name]
...
;defaut : ''
style="border: 1px solid green; background-color: red;"
Syntaxe CSS.
Le ; est obligatoire à la fin (en cas d'ajout de style par le script).
<select style="border: 1px solid green; background-color: red;" name="field_name" id="field_name">
<option value="value1">Option 1</option>
<option value="value2">Option 2</option>
<option value="value3">Option 3</option>
...
</select>
required
[field_name]
...
;défaut : 0
required=1
<select required name="field_name" id="field_name">
<option value="value1">Option 1</option>
<option value="value2">Option 2</option>
<option value="value3">Option 3</option>
...
</select>
rules
[field_name]
...
rules.rule1.value=rule1_value
rules.rule1.message=rule1_message
rules.rule2.value=rule2_value
rules.rule2.message=rule2_message
...
Définition des règles de validation du champ.