Ciao a tutti.
Sto perdente un po troppo tempo con una query selettiva su alcuni campi data in formato TIMESTAMP.

La tabella non è altro che il calendario di partite di campionato (ho presupposto come limite stagione da Luglio dell'anno precedente a Luglio dell'anno corrente).
Siccome in tabella sono presenti anche partite di stagioni passate, vorrei che la query restituisse SOLO le partite della stagione corrente.

Ho abbozzato qualcosa del genere:


Codice PHP:
//preparo la data
$data date("d/m/Y");
$data explode('/'$data);
$day $data[0];
$month $data[1];
$year $data[2];

//calcolo l'anno precedente e successivo
$prev_year=$year-1;
$next_year=$year+1;

//presuppongo che Luglio (07) sia il limite di ricerca stagione 

if ($month=="07") {
    
$stagione="finita";
    
//costruisco il TIMESTAMP (secondi a 0) dal 1 al 31 del mese
    
$season_start=mktime(0,0,0,$month,1,$prev_year);
    
$season_finish=mktime(0,0,0,$month,31,$year);
}
else {
    
$stagione="in corso";
    
//costruisco il TIMESTAMP (secondi a 0) dal 1 al 31 del mese
    
$season_start=mktime(0,0,0,$month,1,$year);
    
$season_finish=mktime(0,0,0,$month,31,$next_year);

}

//leggo il calendario in base alla query  
$sql "SELECT * FROM calendario         
WHERE matchdate>
$season_start
AND matchdate<
$season_finish
ORDER BY matchdate DESC"

ma ovviamente se mi trovo ad esempio nella data "01-05-2009" l'if entra nella prima selezione e mi legge sono i record di Maggio.

mi sto perdendo in un bicchier d'acqua..
scusate il mio php forse un po lungo, non conosco ancora benissimo tutte le funzioni veloci.

qualcuno ha idee?
grazie