Durée en jours, entre deux dates
Bonjour à tous,
j'ai un soucis dans le calcul de la durée des jours entre 2 dates par javascript :cry: En php, ca fonctionne mais pas en javascript :/
Parfois, il y a un jour en moins, parfois 2 jours de décalage. J'ai l'impression qu'il y a un probleme avec les jours à 30 ou 31 jours.
Des exemples :
Je vous affiche le décalage entre parenthese.
Du 10/03/07 au 09/04/07 - nombre de jours : (En Php:30 ; en js :29) (-1)
Du 01/04/07 au 28/04/07 - nombre de jours : (En Php:27 ; en js :27) (0)
Du 25/05/07 au 14/06/07 - nombre de jours : (En Php:21 ; en js :19) (-2)
du 04/08/07 au 31/08/07 - nombre de jours : (En Php:28 ; en js :27) (-1)
si il fallait rajouter un jour.. c'est pas grave ! MAis des fois c'est un, deux ou aucun lol
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
var date1 = new Date(document.etape1.date_depart_y.value, document.etape1.date_depart_m.value, document.etape1.date_depart_d.value);
var date2 = new Date(document.etape1.date_retour_y.value, document.etape1.date_retour_m.value, document.etape1.date_retour_d.value);
if (date1.getTime() < date2.getTime())
document.etape1.duree.value=(Math.floor(((date2.getTime()) - (date1.getTime())) / 1000 / 60 / 60 / 24));
else
document.etape1.duree.value=(Math.floor(((date1.getTime()) - (date2.getTime())) / 1000 / 60 / 60 / 24)); |
merci si vous pouvez m'éclairer !