Il problema è che così com'è la query nel caso: 2011-08-28 21:00:00 se esegui la query ad esempio il giorno 2011-09-10 alle ore 11:30:00 la partita in questione non viene trovata in quanto è vera la condizione riguardante la data data_partita <= data_odierna ma falsa la condizione sul tempo in quanto tempo_partita > tempo_attuale.Originariamente inviato da marcopanico
Vorrei che mi venissero fuori tutte le partite di calcio giocate.
Ho un calendario diviso in due pagine diverse : una per le partite giocate (Quindi tutte quelle che hanno superato la data e l'ora attuale.) e l'altro con le partite da giocare.
Facciamo un esempio :
Se ho una partita che contiene i due campi data di tipi date (2011-09-01) ora di tipo time (21:00:00) la partita non deve essere visualizzata perchè non è stata ancora giocata.
Se ho una partita che contiene i due campi data di tipi date (2011-08-28) ora di tipo time (21:00:00) la partita deve essere visualizzata perchè è stata giocata.
Questa cosa non è fattibile usando il campo time?
(...AND partite.data <= CURDATE() AND partite.ora < CURTIME()...)
Se vuoi lasciare i campi data e tempo separati (cosa comunque assolutamente errata secondo me) allora devi cambiare le condizionei nella query.
Prova così:
codice:... WHERE partite.id_partita = partite_calciatori.id_partita AND partite_calciatori.utente = '$user' AND (partite.data < CURDATE() OR (partite.data = CURDATE() AND partite.ora < CURTIME())) ORDER BY partite.data DESC

Rispondi quotando