PHP: Salvare data nel formato GG/MM/AAAA in un campo DATETIME di MySQL

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)

 

 

Corso Oracle ed SQL

Slides utilizzate in un corso su Oracle e SQL del 2008.

Scarica Corso Oracle