Salut,
Parce que mktime prend 6 variables dans ton cas.
Vu que tu en mets 4,, en gros tu fais :
$date_debut = mktime(0, 0, 0, $_POST'date_debut']); => donne : $date_debut = mktime(0, 0, 0, '01/12/2011');
$date_fin = mktime(23, 59, 59, $_POST'date_fin']); => donne : $date_fin = mktime(23, 59, 59, '01/10/2012');
Tes deux chaines vont retourner 01 en int, du coup vu que la variable numéro 4 demandé est le mois, il va se dire que tu demandes le mois de janvier, le reste des variables sont calculés avec la date d'aujourd'hui, du coup tu as l'impression que c'est la date d'aujourd'hui qu'il t'envoi vu qu'on est en janvier. Le même test en février et tu aurais dis qu'il recule d'un mois.
Voilà en gros pour rectifier, tu dois faire un split de ta variable et utiliser mktime avec ses 6 arguments.
A+