Overview
Impara a configurare opzioni dinamiche per i campi a discesa e a selezione multipla in ChronoForms. La guida copre la preparazione dell'array di opzioni utilizzando un'azione PHP per dati statici/complessi o un'azione Leggi Dati per opzioni basate su database. Spiega l'impostazione della Fonte Dati, del percorso del valore dell'opzione e del testo dell'opzione, inclusi gli aggiornamenti per v8.0.47 per gestire array monodimensionali.
Ecco come configurare il comportamento Opzioni Dinamiche per i campi a discesa e i campi a selezione multipla in ChronoForms v8, la stessa configurazione può essere utilizzata per Chronoforms v7
Inizia preparando il tuo array di opzioni, puoi farlo utilizzando:
- Un'azione PHP se hai una fonte di dati statica o complessa
- Un'azione Leggi Dati se le tue opzioni provengono direttamente dal database
Impostazioni dell'azione PHP

Le azioni PHP restituiranno un array con i valori e i testi delle opzioni
Successivamente, abilita il comportamento Opzioni Dinamiche nel tuo menu a discesa e imposta la Fonte Dati come {var:php25}, che in questo caso è il valore restituito dall'azione PHP denominata "php25", l'azione che abbiamo appena creato
Dovremo anche impostare il percorso del valore dell'opzione su: {row:value} e il testo del valore dell'opzione su {row:text} poiché questo è il percorso per i valori e i testi nel nostro array:

Puoi aggiungere qualsiasi opzione predefinita nella casella Opzioni, queste appariranno prima delle opzioni dinamiche.
Impostazioni Leggi Dati

E le tue Opzioni Dinamiche del menu a discesa cambieranno di conseguenza:

- Utilizziamo i risultati dell'azione denominata "read_users" come Fonte Dati
- Utilizziamo il valore id della riga per il valore dell'opzione, ogni riga proveniente dalla tabella users avrà un valore della colonna "id"
- Utilizziamo il valore username della riga per il testo dell'opzione, ogni riga proveniente dalla tabella users avrà un valore della colonna "username"
Aggiornamento v8.0.47
Se hai ChronoForms v8.0.47 o successiva, puoi anche utilizzare {row:key} e {row:value} se i tuoi valori sono un array monodimensionale, proveniente ad esempio da un array JSON nel database:

in questo caso {row:key} conterrà l'indice del valore numerico e {row:value} conterrà il valore stesso

Comments: