Parametrer un Compte à Rebours

Eléphant du PHP | 72 Messages

04 avr. 2006, 13:02

Bonjour à tous !

J'ai sur une des mes pages un compte à rebours en javascripot dont voici le code de la fonction :

Code : Tout sélectionner

function disp_delai(){ document.forms[0].elements[0].value=delai (2006,4,4,23,30,0); setTimeout("disp_delai()",1000); } function delai(annee,mois,jour,heure,min) {var date_fin=new Date(annee,mois-1,jour,heure,min) var date_jour=new Date(); var tps=(date_fin.getTime()-date_jour.getTime())/1000; var j=Math.floor(tps/3600/24); // récupere le nb de jour tps=tps % (3600*24); var h=Math.floor(tps / 3600); // recupère le nb d'heure tps=tps % 3600; var m=Math.floor(tps/60); // récupère le nb minute tps=tps % 60 var s=Math.floor(tps); if (j < 10) { var j="0"+j; } if (h < 10) { var h="0"+h; } if (m < 10) { var m="0"+m; } if (s < 10) { var s="0"+s; } if (j != 0) { var txt=j+":"+h+":"+m+":"+s+"\""; } else { if (h != 0) { var txt=h+":"+m+":"+s+"\""; } else { if (m != 0) { var txt=m+":"+s+"\""; } else { if (s != 0) { var txt=s+"\""; } else { var txt="Terminé !"; }; }; }; }; date_fin=don_date(date_fin); return txt;}
J'ai dans une base de données les paramètre à utiliser, à savoir dans combien de jours, heure minute seconde le compte à rebours doit se terminer.
Comment regler les parametre de facon dynamique dans le code javasript tout en respectant le nombre de jours ds un mois etc ...

Exemple, 31 décembre 2005
Dans 2 jour et 4 heures 54 minutes 56 secondes ...
Sa se complique ...

Merci à vous

Eléphant du PHP | 451 Messages

04 avr. 2006, 15:03

As-tu cherché ?
Dans la FAQ j'ai vu celà : http://www.phpfrance.com/forums/voir_sujet-8323.php
Ca ne peux pas t'aider ?
Jpaul
J'essaye d'aider : parfois je fais des erreurs, on me les corrige et j'apprends un peu plus. Super ce forum :)

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

04 avr. 2006, 16:15

Je comprend pas trop comment tu peux garder le délai restant en base de données, y a un update toutes les secondes ? Ne serait-il pas plus logique dans ta base de stocker simplement la date et heure de l'événement ? :)

D'autant que ce sont visiblement les paramètres utilisés par ta fonction javascript :

Code : Tout sélectionner

function delai(annee,mois,jour,heure,min) { var date_fin=new Date(annee,mois-1,jour,heure,min)
et soit dit en passant, y a un argument en trop quand tu l'appelles :

Code : Tout sélectionner

delai (2006,4,4,23,30,0)

Eléphant du PHP | 72 Messages

04 avr. 2006, 17:08

Merci j'ai utilisé mktime comme renseigné plus haut :d
Maintenant comment changer mon javascript pour qu'il prenne en compte les secondes ? Je n'en ai jamais fait :s