Joomla.it Forum
Componenti per Joomla! => Gestione Form => : fredmo 27 Aug 2014, 10:47:49
-
Ho bisogno di un aiutino perché NON mastico né php né html.
Vorrei "pre-compilare" un campo del form (in Chronoforms v5) con il nome di registrazione dell'utente che lo utilizzerà.
Ho estratto il nome dell'utente registrato inserendo i seguenti codici all'inizio del codice html generato da Chronoforms:
<?php
$user =& JFactory::getUser();
$email=$user->email;
?>
Il codice html generato da Chronoforms poi continua così:
<div class="gcore-line-tr gcore-form-row" id="ftr-name"><div class="gcore-line-td" id="ftd-name"><label for="name" class="gcore-label-left">Name</label>
<div class="gcore-display-table gcore-input" id="fin-name"><input name="name" id="name" value="" placeholder="" maxlength="" size="" class=" validate['required']" title="" style="" data-inputmask="" data-load-state="" data-tooltip="" type="text" /></div></div></div><div class="gcore-line-tr gcore-form-row" id="ftr-email"><div class="gcore-line-td" id="ftd-email"><label for="email" class="gcore-label-left">Email</label>
Ma questo codice ovviamente non "auto-compila" il campo del nome, ma ne chiede l'inserimento.
La domanda è: quale parte di questo codice devo modificare e come devo modificarlo... affinché l'utente registrato (l'unico che può accedere a questo form) si ritrovi il campo del nome già compilato col suo nome? (O devo agire da un altra parte? In questo caso: dove e come?)
Grazie
-
il codice lo devi mettere in un campo 'custom code' inserito nell'evento 'on load' del set up, non nel codice della form.
dalla v4 in poi i dati della form sono presenti nella hash table $form->data, quindi devi modificare le chiavi di quest'ultima perché la cosa funzioni:
<?php
$user = JFactory::getUser();
$form->data['name'] = $user->name;
$form->data['email'] = $user->email;
?>
ovviamente il campo nome deve chiamarsi 'name' ed il campo email 'email', altrimenti dovrai modificare il codice di conseguenza.
ciao