Des Dates toujours des dates ... [Résolu]

Signaler
Messages postés
316
Date d'inscription
jeudi 9 janvier 2003
Statut
Membre
Dernière intervention
1 février 2010
-
Messages postés
316
Date d'inscription
jeudi 9 janvier 2003
Statut
Membre
Dernière intervention
1 février 2010
-
Bonjour,



Voila j'aurai besoin de comparer deux dates, la premiere est écrite en
dure de la forme aaaa-mm-jj et la seconde serai la date du jour



Le problème c'est qu'avec le script actuel, je retroune toujours false
lorsque je tente de savoir lequel est le plus grand des deux :s



var today = new Date();

var theDay = today.getFullYear() + "-" + (today.getMonth()+1) + "-" + today.getDate();

var execdate = new Date(<?php echo substr($date_action_prev, 0, 10); ?>);

var execdate = execdate.getFullYear() + "-" + (execdate.getMonth()+1) + "-" + execdate.getDate();

alert (execdate > theDay);


Jsuis vraiment mauvais en Java script alors épargner moi les vanes :o).



merci de vos réponses

--Capoueidiablo--

2 réponses

Messages postés
316
Date d'inscription
jeudi 9 janvier 2003
Statut
Membre
Dernière intervention
1 février 2010
1
$date_action_prev est de la forme : aaaa-mm-jj hh:mm:ss

var today = new Date();

// le +1 : vieux hack qui permet d'éviter de trop jouer avec $date_action_prev

today = new Date(today.getFullYear(), today.getMonth()+1, today.getDate());

// str_replace permet d'être ok avec le constructeur de Date

var execdate = new Date(<?php echo str_replace(array("-", ":", " "), ",", $date_action_prev) ?>);

// Date.parse pour avoir le nombre de milliseconde depuis le debut du monde de l'informatique (ie: 01/01/1970)

today = Date.parse(today);

execdate = Date.parse(execdate);

// si ma date est superieur a la date du jour

if (today <= execdate)

return false;
--Capoueidiablo--



Je voudrais me remercier de m'avoir aidé
Messages postés
316
Date d'inscription
jeudi 9 janvier 2003
Statut
Membre
Dernière intervention
1 février 2010
1
// La meme chose mais avec une date prise dans un formulaire

var execdate= document.getElementById("date_action").value;



execdate = new String(execdate);

var year = execdate.charAt(6) + execdate.charAt(7) + execdate.charAt(8) + execdate.charAt(9);

var month = execdate.charAt(3) + execdate.charAt(4);

var day = execdate.charAt(0) + execdate.charAt(1);



var today = new Date();

var today = new Date(today.getFullYear(), today.getMonth(), today.getDate());

var execdate = new Date(year, month - 1, day);

today = Date.parse(today);

execdate = Date.parse(execdate);

if (today <= execdate) {

alert("la date d'execution ne peut être superieur à la date du jour.");

return false;

}
--Capoueidiablo--