Raccourcis : Contenu - rubriques - sous rubriques
FR

Piste: production master_admin drivers config-base creation-action affichage-donnees

Wiki: Index - Derniers changements - Back link

Il est possible d'afficher, non pas le formulaire en lui même, mais seulement les données du formulaire. Cela peut être utile pour afficher le récapitulatif des données saisies par exemple.

Affichage sans personnalisation

Pour les développeurs pressés, il existe un plugin de template qui affiche tout tout seul : formdatafull. Vous ne pouvez pas contrôler la façon dont sont affichés les libellés et les valeurs. Vous devez passer l'objet formulaire à ce plugin.

Voici un exemple dans le contrôleur :

    $form = jForms::get('monform');
    $tpl = new jTpl();
    $tpl->assign('formulaire', $form);

Et dans le template :

   <h1>Le formulaire</h1>
   <p>Vous avez saisie les valeurs suivantes:</p>
 
   {formdatafull $formulaire}

Les libellés et les valeurs du formulaires s'affichent dans un tableau.

Note : vous pouvez utiliser formdatafull dans un template pour une réponse text.

Affichage contrôlé

Comme pour l'affichage du formulaire, il est possible de mieux contrôler l'affichage, en particulier les balises générées, et donc de pouvoir définir les endroits où les champs seront placés.

Vous pouvez utiliser les plugins {formcontrols} et {ctrl_label} que vous connaissez déjà, ainsi que {ctrl_value} :

   <h1>Le formulaire</h1>
   <p>Vous avez saisie les valeurs suivantes:</p>
 
   <table>
    {formcontrols $formulaire}
       <tr>
           <th scope="row">{ctrl_label}</th>
           <td>{ctrl_value}</td>
       </tr>
    {/formcontrols}
    </table>

Notez que vous n'avez pas besoin d'utiliser le plugin {form}.

Il est possible aussi de ne pas utiliser la boucle {formcontrols}, afin d'afficher les valeurs où on veut et dans l'ordre que l'on souhaite, avec toujours les plugins {ctrl_label} et {ctrl_value} en leur indiquant le nom du contrôle à afficher. Mais il faut alors les utiliser à l'intérieur d'un plugin {formdata}

   <h1>Le formulaire</h1>
   <p>Vous avez saisi les valeurs suivantes :</p>
 
   <table>
    {formdata $formulaire}
       <tr>
           <th>{ctrl_label 'name'}</th>
           <td>{ctrl_value 'name'}</td>
       </tr>
       <tr>
           <th>{ctrl_label 'address'}</th>
           <td>{ctrl_value 'address'}</td>
       </tr>
    {/formdata}
    </table>
fr/manuel-1.0/jforms/affichage-donnees.txt · Dernière modification: 2008/09/28 10:46 par laurent
Fils rss des changements récents dans le wiki Creative Commons License