Supporto volontario e collaborativo per Joomla!® in italiano

Guida 2. Joomla 1.7 e Chronoforms. Interagire con il database.

Valutazione attuale: 5 / 5

Stella attivaStella attivaStella attivaStella attivaStella attiva
 

databaseNel precedente articolo Guida 1 - Creare form in Joomla 1.7 con Chronoforms v4 RC 2.0 abbiamo visto come creare un form, inserire un  allegato, inviare email. Con questa guida completeremo la gestione dei dati inseriti nel form permettendo la visione dei dati inseriti, in varie modalità, e la loro modifica nel database in modo da avere la completa gestione del nostro lavoro.

Per cogliere questi obiettivi useremo due form: provaemail2 e provaemail3. Il primo, provaemail2, servirà per elencare i record inseriti nella tabella con il form provaemail, realizzato con la precedente guida, e per lincare i singoli record al secondo form, provaemail3, che mostrerà i valori e consentirà la modifica di essi.

Chiariti dunque gli obiettivi passiamo subito al lavoro per realizzarli. Il primo form che creeeremo sarà provaemail2.

Se già non ci siamo, dal backend di Joomla 1.7 entriamo nel componente Chronoforms nella finestra Form Manager. Qui clicchiamo sulla voce Form Wizard. Si aprirà la finestra per la configurazione di un nuovo form. Nella finestra di lavoro Drag clicchiamo sulla tab Actions per accedere all'elenco delle azioni disponibili. Scorriamo le azioni verso il basso e clicchiamo su DB operations. Fra le azioni della categoria scegliamo DB multi record loader e la trasciniamo nell'area On Load della finecreastra Drop a destra.

drag_actions_dbmulti

Inserita questa prima action è opportuno salvare il lavoro, ma prima di fare questo dobbiamo assegnare un nome al form. Per cui nella finestra Drop clicchiamo sulla tab con etichetta Form setting. Nella nuova finestra di lavoro che si aprirà inseriamo in Form name il valore provaemail2 ed in Published setteremo il valore Yes. Fatto questo possiamo premere l'icona Salva in alto a destra per salvare il form.

form_setting

Passiamo ora alla configurazione dell'azione DB Multi Record Loader appena caricata. Clicchiamo sull'icona di configurazione, che ormai conosciamo, in corrispondenza dell'azione. Si aprirà la finestra popup seguente che mostrerà i contenuti dell tab Basic.

db_multi_basic

Vedremo 5 campi disponibili. Iniziamo ad esaminare quelli che useremo in questa guida, poi vedremo anche il significato degli altri.

Table servirà per selezionare la tabella del database sulla quale operare con questa azione. Avendo nella precedente guida creato la tabella jos_chronforms_data_provaemail scelieremo questo nome. Il prefisso jos_ della tabella potrebbe essere diverso in relazione a quello che abbiamo scelto al momento della installazione di Joomla.

Model ID, modello ID, è questo un parametro importante che ci permetterà di ritrovare i dati della tabella in un array associativo del linguaggio PHP che ci servirà in seguito. Il modello che scegliamo e scriviamo in questo caso è elenco. Questo vuol dire che tutti i dati della tabella saranno disponibili all'interno di un array di php che avrà questo nome $form->data['elenco']. Questa particolarità è un fatto di potenza straordinaria che vedremo subito all'opera nell'azione successiva. 

DB Field è usato per indicare un campo della tabella sul quale vogliamo impostare un filtro fisso sui nostri records di dati. Se lasciato vuoto come ne,l nostro caso, tutti i records della tabella saranno recuperati nel Model ID. L'uso di questo parametro è associato al seguente Request param. Se avessimo inserito nome avremmo impostato questo campo dell tabella come filtro. 

Request param serve invece per impostare un parametro da usare nell'URL di indirizzo del form per creare il filtro di selezione dei record sul campo indicato in DB Field (nome nella nostra ipotesi). Vediamo cosa vuol dire tutto questo discorso.
Supponiamo di aver inserito come parametro di questo settaggio la parola record. Allora se nell'indirizzo URL di questo form, che è http://www.tuosito.it/index.php?option=com_chronoforms&chronoform=provaemail2, aggiungiamo il nostro parametro record ed un valore di filtro in questo modo &record=valerio, così che la URL del form diviene:
http://www.tuosito.it/index.php?option=com_chronoforms&chronoform=provaemail2&record=valerio
Allora tutte le volte che noi chiamiamo il form, con l'aggiunta di questo parametro nella URL, otterremo un filtro dei record basato sul campo della tabella indicato in DB Field  (nome) per il valore uguale a valerio. Cioè sarebbero trovati solo i record che hanno il valore valerio contenuto nel campo nome. Questo è il significato di tutti questi passaggi che spero di essere riuscito e rendere in modo semplice.
Per il nostro form però, ripeto, non useremo questi strumenti, perchè abbiamo necessità di lavorare su tutti i dati senza filtri. Lo strumento però è potentissimo, pensiamo infatti ad una tabella che vogliamo filtrare ad esempio sull'utente che ha inserito i dati. In questo modo potremmo farlo con semplicità.

Fields è l'ultimo settaggio di questa finestra. Qui potremo indicare i nomi dei campi, separati da virgola, che vogliamo caricare dalla tabella. Se lasciamo vuoto come nel nostro caso caricheremo tutti i campi. Cioè se vogliamo limitare l'uso dei dati necessari alle nostre elaborazioni qui avremo la possibilità di fare questo. Esempio se inseriamo nome, email limiteremo il caricamento dei dati solo ai valori di questi due campi.

Continuiamo con la configurazione e analisi dell'azione e passiamo alla tab successiva Advanced.

db_multi_advanced

Load Data selezioniamo Yes per consentire il caricamento di tutti dati del Model configurato nel precedente passaggio. Una specie di interruttore che abilita questa funzione.

Enable Associations, Associated Models e Group Model Data, che in questa occasione non sono usati, saranno configurati nel caso in cui sia necessario usare più tabelle selezionate in altre azioni DB Multi Record Loader per le quali si vogliano stabilire delle associazioni fra tabelle. Questo permetterà di avere tutti i dati derivanti dell'associazione.

WHERE statement consentirà di invece di costruire dei filtri sulla query di estrazione dei dati, che potranno avere anche elementi dinamici determinati dal codice PHP che potrà essere inserito in questa casella. Molto simile questo al campo Query SQL che era presente nel vecchio componente della versione per Joomla 1.5 Chronoconnectivity.

Passiamo alla prossima tab Data Displayer che ha il compito di controllare la visualizzazione dei dati.

db_multi_data_displayer

In Enable Data Displayer possiamo abilitare la modalità di default dell'azione per visualizzare i dati. Per il momento diversamente da come indicato in figura mettiamo Yes.

In Display Fields associeremo i campi della tabella del database ai nomi delle colonne della "tabella" che invece sarà mostrata nella pagina del sito. Quindi nella prima colonna metteremo il campo cf_id della tabella che sarà mostrato nella colonna intestata numero e così di seguito per gli altri campi e colonne, nome con nome ecc.. La stringa che inseriremo sarà fatta in questo modo: cf_id:numero,nome:nome,email:email,allegato:allegato

Order Fields sarà usato per indicare i campi delle colonne della tabella mostrata  nel sito che saranno ordinabili in modo ascendente o discendente con un click del mouse. Nel nostro caso sono stati indicati tutti i campi del form cf_id,nome,email,allegato.

Enable Pagination permette di scegliere se mostrare e dove i comandi per la navigazione fra le pagine dei dati mostrati con le modalità standard di Joomla. Qui abbiamo scelto di mostrarla al piede del form scegliendo botton.

Limit invece consente di fissare il numero dei records visualissati in ogni pagina.

A questo punto del lavoro se non lo abbiamo già fatto conviene salvare il form con il pulsante Salva e Chiudi in alto a destra. Facendo così siamo giunti in Form Manager, cliccando sull'etichetta Frontend view sulla riga del nostro form provaemail2 potremo vedere nel frontend di Joomla il risultato di questa prima parte del lavoro come nella seguente figura.

elenco1

Cliccando sui vari link dei titoli e della paginazione potremo subito verificare l'efficienza di questa azione nel form che abbiamo realizzato senza scrivere una riga di codice. Tuttavia per quanto questo risultato sia molto valido, noi punteremo a raggiungere un risultato più funzionale. Infatti il nostro obiettivo è quello di cliccare su un campo di una riga per essere rimandati ad un form che permetta la modifica dei valori di quel record. Nelle prossime righe descriveremo come realizzare questa funzionalità.

Ritorniamo quindi sui nostri passi e clicchiamo sull'etichetta Wizard edit corrispondente al nome del form provaemail2 e rientriamo nella sezione events.Qui riapriamo la configurazione di DB Multi record Loader entriamo della tab Data Displayer e selezionamo No in Enable Data Displayer. Questo settaggio disabiliterà la visualizzazione di default dei record prevista all'interno dell'azione. Salviamo le modifiche e rientriamo nel pannello di controllo del nostro form. Qui selezioniamo in Drag l'azione Customer Code e la trasciniamo in Drop dopo la DB Multi.

drag_actions_customercode

Clicchiamo subito nell'icona della nuova azione inserita e passeremo a questa nuova finestra popup.

actions_customcode_setting

Nella tab Setting inseriamo i seguenti settaggi. In Mode lasciamo Controller. In Action Label inseriamo il nome che sarà accegnato a questa azione e possiamo scrivere qualsiasi cosa che richiami alle funzioni del codice. Inseriamo Table Header Body Footer che ricorda che con questa azione creeremo la una visualizzazione dei dati persanalizzata con un tabella html.

Nella successiva area di testo Code invece inseriremo il seguente codice che è, ovviamente, il cuore di questa azione.

 
<h1>Modifica Email con allegato</h1>
<?php
// start ord
$img="";
if (Jrequest::getVar('direction','','get')=="") {
$ord="asc";
}
if (Jrequest::getVar('direction','','get')=="desc") {
$ord="asc";
$img="desc";
}
if (Jrequest::getVar('direction','','get')=="asc") {
$ord="desc";
$img="asc";
}
// end ord
?>
 
<table style="width: 100%" id="db_multi_record_loader">
<thead>
<tr>
<th style="width: 15%" class="col1 cell"><a class="order_link direction_asc"
 href="index.php?option=com_chronoforms&chronoform=provaemail2&order=cf_id&direction=<?php echo $ord; ?>"
>numero <?php if (Jrequest::getVar('order','','get')=="cf_id"){
echo "<img src=\"media/system/images/sort_".$img.".png\" alt=\"\"  />"; } ?></a></th>
<th style="width: 25%" class="col2 cell"><a class="order_link direction_asc"
 href="index.php?option=com_chronoforms&chronoform=provaemail2&order=nome&direction=<?php echo $ord; ?>
">nome <?php if (Jrequest::getVar('order','','get')=="nome")
{echo "<img src=\"media/system/images/sort_".$img.".png\" alt=\"\"  />"; } ?></a></th>
<th style="width: 25%" class="col3 cell"><a class="order_link" 
href="index.php?option=com_chronoforms&chronoform=provaemail2&order=email&direction=<?php 
echo $ord; ?>">email 
<?php if (Jrequest::getVar('order','','get')=="email"){
echo "<img src=\"media/system/images/sort_".$img.".png\" alt=\"\"  />"; } ?></a></th>
<th style="width: 35%" class="col4 cell">
<a class="order_link" 
href="index.php?option=com_chronoforms&chronoform=provaemail2&order=allegato&direction=
<?php echo $ord; ?>">allegato 
<?php if (Jrequest::getVar('order','','get')=="allegato"){
echo "<img src=\"media/system/images/sort_".$img.".png\" alt=\"\"  />"; } ?></a></th>
</tr>
</thead>
 
<?php
$bb=$form->data['elenco'];
foreach ($bb as $a) {
echo "<tr><td>".$a['cf_id']."</td><td><a class=\"order_link\" 
href=\"index.php?option=com_chronoforms&chronoform=provaemail3&rec=".$a['cf_id']."\">".$a['nome']."</a>
</td><td>".$a['email']."</td><td>".$a['allegato']."</td></tr>";
}
?>
</table>
<p></p>
 

Con questo codice realizziamo le seguenti funzionalità:

  1. Assegnazione del titolo alla pagina del form fra i tag h1 del HTML
  2. Ordinamento dei record visualizzati per colonna, cliccando sui titoli delle colonne della tabella.
  3. Visualizzazione di un'icona a fianco del nome della colonna ordinata indicante il senso dell'ordinamento ascendente o discendente.
  4. Estrazione con il ciclo foreach dei dati dall'array $form-data['elenco'] e loro scrittura nelle righe del corpo della tabella con gli altri elementi di array $a['nomecampo'].
  5. Creazione del link al form di modifica provaemail3 nei valori dei campi nome della tabella.

Segnalo l'attenzione su come viene realizzato il link, con l'inserimento del parametro rec associato al valore del campo cf_id del record con questo URL:

"index.php?option=com_chronoforms&chronoform=provaemail3&rec=".$a['cf_id']"

Nella creazione del form successivo provaemail3 vedremo meglio insignificato del parametro rec. Salviamo tutto con Salva e Chiudi e da Form Manager clicchiamo su Frontend view per vedere il risultato del lavoro come nella seguente immagine.

elenco2

Con questo abbiamo completato la funzionalità che consente di visualizzare i dati registrati nel database, ordinarli, navigarli fra le loro pagine e tramite il link sul campo nome di andare al form provaemail3 che permetterà la modifica dei dati. Ma poichè ancora non esiste il form citato provvediamo subito a realizzarlo.

Per raggiungere questo obiettivo partiremo dal form provaemail che avevamo realizzato nella precedente guida citata all'inizio e che contiene tutti gli elementi base. Da Form Manager spuntiamo la casella sulla sinistra del nome del form provaemail e poi clicchiamo sull'icona Copy Form il alto a destra. Questo creerà una copia del form che sarà inserita nell'ultima posizione dell'elenco dei form e avrà il nome provaemail-Copy.

copy_form

Per prima cosa dobbiamo rinominare il form. Clicchiamo quindi sull'etichetta Wizard edit sulla destra del nome del form ed entriamo nel pannello di controllo. Qui nell'area Drop clicchiamo sull'etichetta della tab Form Setting. Si aprirà questa finestra.

form_setting2

Modifichiamo il nome del form con provaemail3. Salviamo il tutto ed riapriamo in nostro nuovo form provaemail3 con Wizard edit. I cambiamenti che apporteremo interesseranno alcuni nuovi elementi ed azioni da inserire ed alcune modifiche da apportare ad elementi ed azioni già esistenti. Iniziamo.

Come primo intervento modificheremo il campo Header del form inserendo in Code fra i tag HTML h1 la nuova descrizione Modifica Email con allegato. Un'altra modifica riguarderà il campo Verifica Email dove in Field Default Value inseriremo {email} per consentire il caricamento del valore esistente anche in questo campo. Il motivo di quest'ultima modifica da modo di spiegare una caratteristica della successiva azione DB Record Loader che utilizzeremo per caricare i record esistenti.
Essa infatti in fase di caricamento del form assegnerà ad ogni campo del form il corrispondente valore del campo della tabella del database. Con questo settaggio stabiliremo che al campo email1 sia assegnato il valore del campo della tabella di nome {email}.

verifica_email

Inseriamo ora un nuovo elemento del form tipo Custom element con il solito metodo da Drag e Drop e lo posizioneremo subito sopra il campo allegato.

custom_elements

Selezioniamo l'icona di modifica del Custom Element, ed lasciamo Field Name e Field ID come proposti, mentre in Label Text inseriamo il nome Immagine allegato. In Code inseriamo invece il seguente codice che permetterà di visualizzare nel form l'immagine dell'allegato associata con il record scelto. Da segnalare il percorso alla cartella contenente gli allegati realizzato con codice PHP ed il nome del file allegato recuperato con {allegato}.

custom_elements_general

 
<img style="border: 1px solid #000000;" class="caption" title="{allegato}" 
src="<?php echo Juri::base()."components/com_chronoforms/uploads/provaemail/"; ?>{allegato}"
 alt="immagine allegato"  height="150" />
 

Anche il campo allegato richiederà alcune modifiche. Entriamo quindi nella modalità dei settaggi dell'allegato cliccando sull'icona di configurazione. Lasciamo inalterati i valori delle prime due tab General e Other. Nella tab Validation togliamo il segno di spunta dalla checkbox Required per indicare che in questo form di modifica non sarà oppligatorio inserire l'allegato.

allegato2_validation

Ci spostiamo poi nella tab Ghost. Qui spuntiamo la checkbox Enable Ghost per abilitare questa funzionalità. Nel campo successivo Ghost Value inseriamo il richiamo al valore dell'allegato con la consueta notazione {allegato}.
Il settaggio di questo parametro fantasma consentirà, nel caso di non inserimento del valore nel form,  di passare comunque il valore del campo allegato del record corrente e quindi eviterà che il valore del campo  sia modificato in un valore vuoto. Molto utile ed opportuna questa funzione. Rispetto alla precedente versione V3 consente di risparmiare un po' di codice che avremmo dovuto scrivere ed inserire nel form per gestire questa situazione. Salviamo tutte le modifiche.

allegato2_ghost

Salviamo il tutto e passiamo alla prossima mossa. Inseriremo un bottone "Indietro" che permetterà con un click di ritornare al form provaemail2 per compiere ulteriori azioni sui dati. Poichè fra gli elementi del form non è disponibile un bottone, lo costruiremo. Da Drag a Drop trasciniamo un elemento tipo Custom Element e lo lasciamo nell'ultima posizione.

custom_elements2

Entriamo nella finestra di configurazione dell'elemento.

custom_elements2_general

In Label Text inseriamo Indietro. Spuntiamo la check Pure code per evitare che il codice sia inserito in altri tag HTML generati da Chonoforms. In Code inseriamo il seguente codice che realizza il bottone con il link al form provaemail2. Salviamo tutto il lavoro

 
<div class="ccms_form_element" id="input_indietro_container_div">
<a href="index.php?option=com_chronoforms&chronoform=provaemail2">
<input name="input_indietro" class="" value="Indietro" type="button" />
</a>
<div class="clear"></div></div>
 

Inseriamo ora l'ultimo campo necessario. Sarà del tipo Hidden box. Lo trasciniamo da Drag a Drop e lo lasciamo nell'ultima posizione.

hidden_field

Entriamo in configurazione del campo nascosto ed al campo Field Name assegnamo il nome cf_id, che corrisponde alla chiave primaria della tabella di database che registra i dati. La funzione di questo campo così concepito è fondamentale perchè quando sarà caricato il record da modificare questo campo assumerà il valore del cf_id del record stesso e questo permetterà a Chronoforms nella fase del salvataggio dei dati di andare a salvare i nuovi dati nello stesso record di origine dei dati inizialmente caricati.
Il meccanismo è semplice quando il valore di cf_id non esiste, come nel form di caricamento provaemail, un nuovo record viene aggiunto in coda a quelli esistenti. Quando invece sarà assegnato un valore al campo cf_id, Chronoforms registrerà i dati nel record che ha il valore di cf_id uguale a quello assegnato.
E' questa una caratteristica generale di Joomla, che Chronforms mantiene, e che useremo continuamente in tutte le operazioni di aggiunta e modifica dei records di dati nelle tabelle del database.

hidden_fields_config

Passiamo ora all'inserimento e modifica delle actions del form. Il primo intervento lo faremo inserendo l'azione DB Record Loader da Drag a Drop nell'area On Load. Questa azione avrà il compito di caricare i dati del record che desideriamo modificare.

actions_db_record_loader

Appena inserita l'azione la trascineremo usando l'icona con le frecce verdi immediatamente sopra l'azione Show html. Questo perchè è necessario avere i dati da visualizzare prima che i campi del form siano mostrati. Fatto questo primo adempimento, entreremo in configurazione dell'azione cliccando sull'icona che attiva tale funzione. Passiamo quindi alla configurazione dei campi mostrati dalla finestra popup che si aprirà.

actions_db_record_loader_setting

Prima di procedere agli inserimenti, per comprendere il loro significato, è opportuno ricordare che nell'azione Customer Code di nome Table Header Body Footer, inserita nel precedente form provaemail2, quando abbiamo inserito il link sul campo nome al form provaemail3, che stiamo realizzando, abbiamo aggiunto il seguente URL nel link

"index.php?option=com_chronoforms&chronoform=provaemail3&rec=".$a['cf_id']

L'ultimo parametro passato nel l'URL ha il nome rec e per valore quello del campo cf_id del record visualizzato. Questa è l'informazione che desideriamo dare al nostro form in costruzione per farli visualizzare il record che abbiamo scelto. Vediamo come queste informazioni saranno inserite nel form affichè esso possa compiere il servizio richiesto.

In DB Field inseriremo il nome del campo della tabella su cui vogliamo effettuare la ricerca del record. In questo caso in coerenza con quanto inserito nel link il campo sarà cf_id, la chiave primaria. Poteva anche essere un altro campo, ma in questo caso noi abbiamo bisogno di un campo che abbia un valore unico nella nostra tabella nel database, e il campo cf_id ,essendo chiave primaria della tabella, garantisce questa caratteristica dell'univocità.

In Table selezionamo la tabella jos_chronforms_data_provaemail che abbiamo usato nei precedenti form che contiene i nostri dati.

In Request Param inseriamo invece il nome del parametro rec che abbiamo usato nel link che abbiamo citato appena sopra.

In Load Fields selezionamo Yes per dire all'azione che essa dovrà popolare i campi del form, che corrispondono ai nomi dei campi della tabella del database, con i rispettivi valori.

Quindi riepilogando con questi parametri inseriti noi chiediamo all'azione DB Record Loader di ricercare fra i record della tabella del database quello che ha nel campo cf_id il valore uguale a quello che abbiamo passato con il parametro rec nel link di chiamata al form. Appena il record sarà trovato l'action popolerà con i campi del form con  i corrispondenti campi del database. Questa in sintesi è la funzione che compiuta dall'azione l'azione.

Salviamo tutto il lavoro con i soliti tasti. Passiamo ora alla prossima azione da adeguare Upload Files. Qui modificheremo solo la voce Upload Path. Nel precedente form avevamo lasciato questa voce vuota. Questo perchè per default Chronoforms salva gli allegati nella cartella components/com_chronoforms/uploads/nomedelform/. Ma in questo caso avendo modificato il nome del form dobbiamo indicare il percorso altrimenti gli allegati non finirebbero nella cartella giusta. Qui non possiamo indicare un URL ma un percorso assoluto. Per ricavarlo abbiamo varie possibilità, tutte disponibili nel pannello di controllo di joomla. Una via è quella di andare in Configurazione Globale, poi nella tab Server e copiare il percorso che vediamo in corrispondenza della voce Percorso Temp, senza l'ultima cartella tmp. Quello sarà il Percorso Assoluto del nostro Joomla.

percorsoassoluto

Chiudiamo Configurazione Globale e rientriamo nel nostro form e nella tab Events apriamo in configurazione l'azione Upload Files.

allegato2_setting

Incolliamo il percorso assoluto nella voce Upload Path ed a esso aggiungiamo questo percorso

components\com_chronoforms\uploads\provaemail\

che aggiunge al percorso assoluto del sito l'esatta posizione della cartella degli allegati nelle cartelle di joomla. 

Attenzione a un paio di cose:

  1. aver tolto l'ultima cartella tmp sopra citata;
  2. aver lasciato la barra che precede la cartella tmp;
  3. se il server gira su windows, come nel mio caso su server locale, ma vi sono anche server remoti che girano sotto windows, le barre di separazione delle directory sono rovesciate ed in questo caso dovranno essere rovesciate anche le barre del percorso aggiunto così:

components/com_chronoforms/uploads/provaemail/

Salviamo il lavoro. Entriamo ora nella action Show Thanks Message per adeguare il messaggio di ringraziamento alla nuova situazione che non è di inserimento ma di modifica del record.

Siamo all'ultimo passaggio che è l'inserimento dell'azione Redirect User da Drag a Drop nell'area On Submit nell'ultima posizione. Questa azione avrà il compito di rimandare il form, dopo il salvataggio dei dati, al precedente form provaemail2, da cui siamo partiti e che mostra tutti i records salvati.

redirect

Apriamo l'azione per il settaggio e nell'unico campo presente Target URL inseriamo l'indirizzo relativo del precedente form.

index.php?option=com_chronoforms&chronoform=provaemail2

Questo settaggio consentirà,  quando confermiamo una modifica al termine di tutte le operazioni previste, di ripassare il controllo di tutto al form provaemail2 per continuare con altre modifiche o terminare.

redirect_setting

Salviamo tutto per l'ultima volta.

Non resta ora che provare il tutto. Clicchiamo sul link Frontend view in corrispondenza del form provaemail2 e vedremo l'elenco dei records registrati.

form_provaemail2

Da qui cliccando su un link in corrispondenza della colonna nome saremo inviati al form provaemail3 che si aprirà mostrando i dati del record richiamato.

form_provaemail3

Se tutto ha funzionato dovremo vedere qualcosa di simile alla precedente immagine.

Si conclude qui questa guida che è diventata piuttosto tosta. Spero di essere riuscito a illustrare in modo chiaro i vari passaggi da fare per riuscire a gestire i dati inseriti in una tabella di database con il componente Chronofroms v4.

Auguro a tutti buon lavoro ed arrivederci alla prossima puntata degli approfondimenti su questo componente.


Valerio Sichi (vales)


CommentaCommenta questo articolo sul forum

Commenta su G+Oppure commenta e condividi questo articolo sulla nuova pagina ufficiale di Joomla.it su Google+

Ultima versione di Joomla!®

downloadVer. 3.8.0 Stabile Italiana
Data di rilascio: 19 Settembre 2017
(leggi la notizia Demo online

Le migliori estensioni gratuite

Un elenco aggiornato con i link a più di 100 estensioni fra componenti, moduli e plugin gratuiti per Joomla! 3

Manuale in italiano

Manuale in italianoPer conoscere meglio Joomla!, le sue caratteristiche ed il metodo di utilizzo leggi il manuale tradotto in italiano.

Molto utili anche le risposte alle domande più frequenti: FAQ

Sicurezza del proprio sito Joomla!Leggi anche: Nozioni sulla sicurezza del proprio sito

Autori di articoli recenti

Invia un articolo!Scrivi un articolo su Joomla.it e ricevi i ricavi dalle pubblicità di Google Adsense!
Segui queste istruzioni, condividi e collabora con la community. L'elenco degli autori attivi sul sito.

Libri consigliati

Torna su

Joomla.it sui Social Network

JoomlaDay Italia

JoomlaDay

Newsletter

Inserisci qui la tua e.mail: