Besoin d'aide pour calcul nbr jour dans un datepicker..

Utilisateur anonyme - 30 mars 2011 à 19:49
 Utilisateur anonyme - 1 avril 2011 à 18:10
Bonjour !

Débutant très nul, J'ai de nouveau besoin d'aide (merci 007julien !!) pour réaliser un calcul de nbr de jour entre deux dates dans un document html.

Pour cela j'utilise une demo de CalendarXP - Range Date qui fonctionne très bien mais qui ne calcule pas le nbr de jours entre deux dates

vous trouverez ici --> Formulaire de demo dans lequel vous pouvez aussi télécharger les sources (formulaire, javascript et css).

007julien m'avait déjà bien aidé sur le sujet... mais hélas, les calculs ne fonctionnent pas correctement (nbr de jour erronés pour dates à cheval entre deux mois n'ayant pas 31 jours) et comme je suis nul, j'ai pas trouvé de solution..

Si une bonne âme veux bien se pencher 'de nouveau' sur mon problème, ce serai super !

Merci

JClaude

2 réponses

007Julien Messages postés 276 Date d'inscription mercredi 22 septembre 2010 Statut Membre Dernière intervention 8 janvier 2014 4
1 avril 2011 à 15:22
Attention, en javascript les mois sont indexés de 0 à 11 et non pas de 1 à 12 comme en PHP.

Par ailleurs, l'heure du serveur n'est pas forcément celle du poste client (voir setlocale en PHP).

Ces deux mises en garde et le recours aux variables, méthodes et fonctions du script initial devraient permettre de surmonter aisément les difficultés rencontrées...
0
Utilisateur anonyme
1 avril 2011 à 18:10
Salut 007julien !

Bin en fait, j'ai teste les lignes que tu m'avais suggérer...

Le problème n'est pas un écart de mois ou de serveur !!
Le calcul fonctionne bien mais le nbr de jours compte tous les mois à 31 jours..
C'est à dire que du 29 février au 1 mars 2012, j'obtiens 3 jours au lieu de 1.

Je n'ai pas ce problème dans le modèle simple que j'ai mis en ligne mais le calcul n'est pas automatique mais obtenu par un bouton 'input' dans le formulaire.

Cela ne me convient pas, je voudrais la mise à jour auto du champ.

J'ai tenté (avec mon peu de connaissance) de 'mixer' les deux solutions mais sans succès...
A+
JClaude
0