Joomla.it Forum
Componenti per Joomla! => Gestione Form => : echelon89 11 Aug 2010, 15:45:51
-
Salve a tutti! :)
Ho creato un form con chronoform, che salva i dati inviati in una tabella che ho creato manualmente nel database.
Uno dei campi però mi da alcuni problemi, ovvero il campo data.
Sul form wizard ho aggiunto il campo date time picker, che seleziona la data con il calendario in javascript nel formato gg/mm/aaaa.
MySql, però, utilizza il formato aaaa-mm-gg, per cui quando viene inviato il form, non appare nessun messaggio d'errore e nel nuovo record del database appare solamente 0000-00-00.
Ho provato a cambiare il tipo del campo sia in date che in datetime, ma senza successo. :-\
Qualcuno sa aiutarmi?
Grazie in anticipo! :D
-
Dovresti usare la finestra validation del form. Abilitare la validazione del server a Yes.
Quindi con del codice php dovresti modificare il valore del campo data inserito nella versione yyyy-mm-dd che accetta il database. Un codice tipo questo
<?php
JRequest::setVar('tuocampodata',substr(JRequest::getVar('tuocampodata','','post'),6,4)."-".substr(JRequest::getVar('tuocampodata','','post'),3,2)."-".substr(JRequest::getVar('tuocampodata','', 'post'),0,2),'post');
?>
Io ho risolto così. Questo è il concetto. Forse dovrai adeguare qualcosa alla tua situazione.
-
Grazie mille!
Ho modificato un attimino la tua soluzione così ;)
<?php
$pezzi=explode("/", JRequest::getVar('nomecampo','','post'));
JRequest::setVar('nomecampo',$pezzi[2]."-".$pezzi[1]."-".$pezzi[0],'post');
?>
-
Ottimo l'importante è che funzioni.
Grande campo il validation server ;D
-
salve, scusate eventuali irregolarità, volevo sapere, essendo poco esperto, il codice php in che file va inserito? grazie slauti
-
In chronoforms, selezioni il form da modificare, vai nella scheda Validation e in basso, su server side validation code copi e incolli quel codice, ricordandoti di cambiare il nome del campo di testo interessato ;)