Originariamente inviato da nicola75ss
$giorno = date('d');
$mese = date('m');
$anno = date('Y');

$data = $anno.'-'.$mese.'-'.$giorno;

Ti avanza del tempo di esecuzione, vero?

Quello che hai scritto (3 chiamate alla funzione date) è uguale a questo:
$data = date('d-m-Y');

In ogni caso nel database vanno al contrario, per un campo DATETIME il formato dovrebbe essere questo:
$data = date('Y-m-d H:i:s');