La query presenta una serie di errori formali e rende data nulla.
La differenza tra due date non e' un'altra data. Mi spiego?
2004-08-25 18:41:03 - 2004-08-20 12:00:00 quale data dovrebbe essere?
Ci sara' una differenza che devi esprimere in valori di giorni/ore/minuti . Per fare questo devi portare le due date in secondi e poi sottrarle. La funzione che usi poi tratta solo DAY_SECOND mentre tu passi una data completa.
Facciamo un esempio:
SELECT TIME_TO _SEC(NOW()) - TIME_TO _SEC(data1) AS diff FROM ecc...
In diff avrai il numero dei secondi che intercorrono tra le due date. Ma il risultato sara' un timestamp non valido perche' fuori range. Sara' quindi un semplice numero di secondi, che dovrai gestire per esempio con la seconda parte dello script php che ti ho postato.
codice:query... ecc. $diff = $res['diff']; $giorni = floor($diff / (60*60*24)); $diff1 = floor($diff % (60*60*24)); $ore = floor($diff1 / (60*60)) ; $diff2 = floor($diff1 % (60*60)) ; $min = floor($diff2 / (60)) ; $sec = $diff2 % 60; echo " N. giorni $giorni $ore:$min:$sec ";![]()