Overview
Apprenez à configurer les options dynamiques pour les champs de liste déroulante et de sélection multiple dans ChronoForms. Le guide couvre la préparation de votre tableau d'options en utilisant une action PHP pour des données statiques/complexes ou une action Lire les données pour des options provenant de la base de données. Il explique la configuration de la Source de données, du Chemin de la valeur de l'option et du Texte de l'option, y compris les mises à jour pour v8.0.47 pour gérer les tableaux à une seule dimension.
Voici comment configurer le comportement des Options dynamiques pour les champs de liste déroulante et les champs de sélection multiple dans ChronoForms v8, la même configuration peut être utilisée pour Chronoforms v7
Commencez par préparer votre tableau d'options, vous pouvez le faire en utilisant :
- Une action PHP si vous avez une source de données statique ou complexe
- Une action Lire les données si vos options proviennent directement de la base de données
Paramètres de l'action PHP

Les actions PHP renverront un tableau avec les valeurs et les textes des options
Ensuite, activez le comportement des Options dynamiques dans votre liste déroulante et définissez la Source de données comme {var:php25}, qui dans ce cas est la valeur renvoyée par l'action PHP nommée "php25", l'action que nous venons de créer
Nous devrons également définir le Chemin de la valeur de l'option sur : {row:value} et le Texte de la valeur de l'option sur {row:text} car c'est le chemin pour les valeurs et les textes dans notre tableau :

Vous pouvez ajouter des options par défaut dans la boîte Options, celles-ci apparaîtront avant les options dynamiques.
Paramètres de Lire les données

Et les Options dynamiques de votre liste déroulante changeront en conséquence :

- Nous utilisons les résultats de l'action nommée "read_users" comme Source de données
- Nous utilisons la valeur "id" de la ligne pour la valeur de l'option, chaque ligne provenant de la table des utilisateurs aura une valeur de colonne "id"
- Nous utilisons la valeur "username" de la ligne pour le texte de l'option, chaque ligne provenant de la table des utilisateurs aura une valeur de colonne "username"
Mise à jour v8.0.47
Si vous avez ChronoForms v8.0.47 ou une version ultérieure, vous pouvez également utiliser {row:key} et {row:value} si vos valeurs sont un tableau à une seule dimension, provenant par exemple d'un tableau JSON dans la base de données :

Dans ce cas, {row:key} contiendra l'index de la valeur numérique, et {row:value} contiendra la valeur elle-même

Comments: