Originariamente inviato da franz79
ho notato inoltre che se faccio una semplice estrazione del campo "giorno" senza formattare niente lui mi restituisce:

2003-12-29 00:00:00

Non capisco perché 00:00:00

boh...
Facciamone una per volta.

1) 2003-12-29 00:00:00 perche il campo e' in formato DATETIME. Se ti interessa solo data imposta il compo come DATE e avrai solo 2003-12-29.

2) Le date che tu ricevi tramite POST sono stringhe e vanno convertite in DATE.
Esemplifichiamone una:

Se facciamo echo $_POST['data_da'] il formato atteso e' gg/mm/aaaa.
Quindi convertiamo la stringa ricevuta in data:

list($giorno, $mese, $anno) = explode('/', $_POST['data_da']);
$da_data = "$anno-$mese-$giorno";

ora un echo a $da_data dovrebbe presentare yyyy-mm-dd lo stesso formato che si trova nel db ( a prescindere dal TIME 00:00:00).

3) Andiamo ad estrarre i record che rispondo alla condizione da - a.

SELECT omississ......
WHERE giorno BETWEEN $da_data AND $a_data
ORDER ecc...

Forse nella fretta qualcosa di storto prima c'era. Ora con calma segui la guida tracciata e completala.

Se hai dei problemi usa echo per verificare cosa effettivamente traduci. es.:

echo "
Data da: $_POST[data_da] a $da_data
";

Sono punti di debug efficacissimi.

Ok. prova e racconta.