Questo appunto è un codice PHP utile per salvare in un database MySQL una data inserita in un form nel formato “classico” GG/MM/AAAA, quando il campo nel database è di tipo DATETIME ovvero “Y-m-d H:i:s”.
Nel form richiedo di inserire la data in questo formato GG/MM/AAAA:
<input type="text" name="data">
Inviato il form, da PHP manipolo il campo ricevuto (nel mio caso chiamato “data“, recuperato con $_POST[“data“]), con la funzione di PHP date():
$data = date('Y-m-d H:i:s', strtotime(str_replace('/','-',$_POST["data"])));
Ora posso salvare il contenuto di $data direttamente nell’opportuno campo del database.
Per fare l’operazione inversa ovvero formattare correttamente la data recuperata dal database con una query (nel mio esempio il campo si chiama proprio data e la tabella mia_tabella) uso la funzione di SQL DATE_FORMAT e salvo il risultato nel nuovo campo data_formattata:
mysql_query(SELECT DATE_FORMAT(data,'%d/%m/%Y') as data_formattata FROM mia_tabella)