Comparer 2 dates... [Résolu]

Signaler
Messages postés
3
Date d'inscription
mercredi 10 mars 2004
Statut
Membre
Dernière intervention
12 août 2004
-
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
-
Bonjour(soir) à tous !!

J'ai depuis ce matin un énorme problème en ce qui concerne le contrôle de dates.
Je dois en effet créer un contrôle qui fait que l'utilisateur obtiendra un message d'erreur l'empêchant de soumettre le formulaire s'il a saisi une date qui soit égale à la date du jour ou bien à une date ultérieure.
Le problème est que la date que compose l'utilisateur est découpée en trois parties dane le formulaire :

/
/

J'ai eu beau chercher sur internet, je n'ai rien trouvé qui corresponde vraiment à mon problème.
Je voudrais donc pouvoir comparer la date saisie par l'utilisateur et celle du jour et lui renvoyer un message d'erreur si la date saisie et supérieure ou égale à celle du jour.
Mais comme je ne connais que très peu Javascript, je rame pas mal.

J'espère avoir été clair dans mes explications (je ne suis pas très bon pour expliquer aux autres).
Merci d'avance pour votre aide.
@+ ^_^

4 réponses

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
Bonjour,
<script type="text/javascript">
function ctr()
{ var d=new Date(); 
 if (  ((parseInt(var_Annee.value,10)*12*31)+
 	    (parseInt(var_Mois.value,10)*31)+
    (parseInt(var_Jour.value,10) ))
      <= 
   ((d.getFullYear()*12*31)+
    (d.getMonth()*31)+
    (d.getDate()))  )
alert("date invalide");    }
</script>	    
</HEAD>

 / 
 /


on peut sûrement mieux faire ...
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
Messages postés
3
Date d'inscription
mercredi 10 mars 2004
Statut
Membre
Dernière intervention
12 août 2004

Merci pour la réponse !!
En fait, en m'acharnant sur mon problème, j'ai pu le résoudre. Je mets la solution, si ça peut aider quelqu'un d'autre :


var Date_Actuelle = new Date();
var j = Date_Actuelle.getDate();
var m = Date_Actuelle.getMonth()+1;
var a = Date_Actuelle.getFullYear();
(formulaire.var_Annee.value >= a && formulaire.var_Mois.value >= m && formulaire.var_Jour.value >= j || (formulaire.var_Annee.value >= a && formulaire.var_Mois.value > m ) || formulaire.var_Annee.value > a)

alert('Vous ne pouvez saisir une date ultérieure ou égale à celle d\'aujourd\'hui.')

Messages postés
3
Date d'inscription
mercredi 10 mars 2004
Statut
Membre
Dernière intervention
12 août 2004

J'ai oublié le "if" au tout début de la 5ème ligne...
:shy)
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
et moi une erreur grossière : il faut mettre
((d.getMonth()+1)*31)+

Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]