Joomla.it Forum

Componenti per Joomla! => Gestione Form => : sh7va 17 Jul 2016, 19:25:42

: [RISOLTO] Chronoforms V5 - Email che richiami i dati di una tabella
: sh7va 17 Jul 2016, 19:25:42
Ciao a tutti,
seguendo questa discussione http://forum.joomla.it/index.php/topic,250713.0.html (http://forum.joomla.it/index.php/topic,250713.0.html)
grazie alle indicazioni di giusebos, vales e mmleoni sono riuscito a far visualizzare nel mio form i dati della mia tabella.
Vorrei sapere se è possibile far visualizzare questi dati anche nell'invio di una mail. Infatti la mail viene inviata correttamente per tutti gli altri campi, ma non riesco però a far visualizzare i dati estratti dalla tabella visualizzati nel mio form in un campo container.

Grazie per l'aiuto.
: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: ghepa 19 Jul 2016, 11:56:20
Ciao sh7va,

mi scuso in anticipo se ho interpretato male la tua richiesta, ma nel frattempo ti rispondo per quanto ho capito.

Dunque, per inviare una mail ad un destinatario in automatico con all'itnerno i dati appena inseriti dall'utente o visualizzati in un determinato campo, bisogna, nella sezione SETUP, inserire l'oggetto mail.
Al suo interno ci sono diversi campi da compilare come ad esmepio a chi inviare la mail, l'oggetto della mail etc etc.

Per quanto riguarda il corpo della mail, ossia il testo che verrà visualizzato, all'interno della seizone EMIAL TEMPLATE, io ho fatto così:


<table width="500px" align="center">
<tbody>
<tr>
<td width="25%">nome</td>
<td>{name}</td>
</tr>
<tr>
<td width="25%">cognome</td>
<td>{surname}</td>
</tr>
<tr>
<td width="25%">oggetto</td>
<td>{oggetto}</td>
</tr>
<tr>
<tr>
<td width="25%">email</td>
<td>{mail}</td>
</tr>
<tr>
<td width="25%">messaggio</td>
<td>{messaggio}</td>
</tr>
</tbody>
</table>


Tutte le voci tra parentesi graffe, non sono altro che i nomi del Field name che hai dichiarato all'interno del tuo form.

Spero di aver esaudito i tuoi dubbi.

Ciao
Marco
: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: sh7va 19 Jul 2016, 23:24:40
Ciao ghepa,
grazie intanto per la risposta.


Sto cercando di realizzare un form di prenotazioni. In base alla scelta che l'utente effettua da un dropdown, il form mi visualizza il prezzo di un servizio che viene ricavato tramite dbread da un database precedentemente creato. E fino a qui funziona tutto.


Quando viene inviata la mail di conferma al cliente riesco a far visualizzare tutti i dati inseriti dall'utente nel form tramite l'utilizzo della sintassi {Field id}, ma non riesco però a visualizzare il prezzo che deve essere richiamato dal database.
: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: vales 20 Jul 2016, 08:47:21
se visualizzi il valore del prezzo in un campo del form devi utilizzare {field_name} non {field_id}
: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: sh7va 20 Jul 2016, 09:29:53
Il prezzo viene visualizzato in un container di tipo div che non ha però il field_name ed è per questo motivo che non riesco a farlo visualizzare nel corpo della mail.
: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: tomtomeight 20 Jul 2016, 09:51:48
Valorizzalo come variabile e stampi la variabile.
: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: vales 20 Jul 2016, 11:46:24
oltre che visualizzarlo assegna il valore anche ad un campo input hidden e lo ritroverai dopo l'invio in {nome_campo_input}
: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: sh7va 23 Jul 2016, 01:54:55
Scusatemi, ma non riesco ad assegnare il valore  ad un campo input hidden.
Per assegnarlo posso sempre utilizzare il db read inserito nell'ajaxevent? O devo inserire un altro db read? Devo inserire un custom code?
: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: vales 23 Jul 2016, 07:57:58
Credo a questo punto dovresti descrivere cosa hai inserito nel form sia in designer che in on submit altrimenti e difficile dare indicazioni precise.
: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: sh7va 23 Jul 2016, 11:50:41
 In designer ho inserito un container Div con Label e Title prezzo e ID AjaxTarget


Ho poi inserito questi 2 dynamic html:


On Change Value Of corsa - Percorso Target container - prezzo AJAX event AjaxEvent
On Change Value Of persone - Persone Target container - prezzo AJAX event AjaxEvent


In setup ho aggiunto un evento AjaxEvent ed ho messo all’interno un DB Read con le seguenti impostazioni:


Action label: loadPrezzo
Enabled: Yes
Table name: aaa_corsa
Multi read: Yes
Enable model id: Yes
Model Id: CorsaFiltered
Conditions:
:
<?php return array('idCorsa' => (int)$_GET['corsa']); ?>

Ho inserito poi un Custom code nell’ on found del Db Read con Action Label prezzo e questo content:


:
<?php 
foreach($form->data["CorsaFiltered"] as $user){
if (
$form->data["persone"] == "auto") {
echo (
"<div class='prezzo'>"); 
echo (
"Prezzo: " );
echo (
"<>");  
echo (
"<div class='euro'>"$user['Prezzo']. "<>");
} else {
echo (
"<div class='prezzo'>"); 
echo (
"Prezzo: " );
echo (
"<>");  
echo (
"<div class='euro'>"$user['PrezzoVan']. "<>");
}
}
?>


: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: vales 23 Jul 2016, 18:43:48
Non hai detto tutto, ma mi sembra di capire che hai due campi corsa e persone in funzione dei quali ottieni il prezzo (corsa per numero persone ?) che metti in un container div.

corsa e persone sono campi dropdown ? corsa seleziona il prezzo e persone il numero persone ?

comunque sia il container div non va bene devi usare un campo testo a cui assegni il valore con l'ajax event
: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: sh7va 23 Jul 2016, 19:49:42
Il campo corsa è un campo dropdown ed il campo persone un radio box. La radio box è formata solo da 2 variabili: auto (che sarebbe da 1 a 3 persone) e van (che sarebbe da 4 a 8 persone).

Nella tabella ho i campi idCorsa, nomeCorsa, Prezzo e PrezzoVan.

In base alla scelta del dropdown, se nella radio viene selezionato auto viene estrapolato il valore presente nel campo  Prezzo della tabella, se nella radio viene selezionato van viene estrapolato il valore presente nel campo PrezzoVan della tabella.
: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: sh7va 24 Jul 2016, 11:04:06
Grazie Vales,
sono riuscito ad assegnare il valore al campo testo con l'ajax event.


Grazie mille per l'aiuto e la pazienza.
: Re:Chronoforms V5 - Email che richiami i dati di una tabella
: vales 24 Jul 2016, 11:48:18
Mi ero dimenticato,

ora che il valore è assegnato al campo testo, per renderlo non modificabile dal form, nel settaggio del campo di testo Extra params del campo metti readonly=readonly per renderlo visibile ma non modificabile.

Poi metti risolto nel titolo del primo post.  ;D