Accueil > Forum > > > > Compte à rebours
Compte à rebours
jeudi 29 mai 2008 à 13:09:38 |
Compte à rebours

wadpap13
|
Bonjour,
J'ai un soucis avec mon compte à rebours dynamique. Il affche l'heure coté client et j'aimerais avoir un compte à rebours avec l'heure coté serveur.
Donc dans mon code j'ai remplacé :
var aujourdhui = new Date(); par var aujourdhui = new Date(<?=date('Y,m-1,d,H,i,s')?>);
Donc ca marche bien, il le fait bien avec l'heure coté serveur, mais le compteur reste figé si on ne recharge pas la page, il n'est plus dynamique.
Pour info, voici mon code :
// nombre de millisecondes par jour, heure, minute et seconde var mms_jour = 24 * 60 * 60 * 1000; var mms_heure = 60 * 60 * 1000; var mms_minute = 60 * 1000; var mms_seconde = 1000; function decompte() { // la date courante var aujourdhui = new Date(<?=date('Y,m-1,d,H,i,s')?>); // on crée les variables qui accueilleront les différences entre aujourd'hui et la date à atteindre var change_j = -1; var change_h = -1; var change_m = -1; // le total de millisecondes de différences var diff_mms = cible.getTime() - aujourdhui.getTime(); // pareil pour les jours diff_jours = Math.floor(diff_mms / mms_jour); diff_mms -= diff_jours * mms_jour; // pour les heures diff_heures = Math.floor(diff_mms / mms_heure); diff_mms -= diff_heures * mms_heure; if(diff_heures<10){ diff_heures="0"+diff_heures; } // les... minutes, bravo ;-) diff_minutes = Math.floor(diff_mms / mms_minute); diff_mms -= diff_minutes * mms_minute; if(diff_minutes<10){ diff_minutes="0"+diff_minutes; } // les secondes, ce qui reste en fait. var diff_secondes = Math.floor(diff_mms / mms_seconde); if(diff_secondes<10){ diff_secondes="0"+diff_secondes; } // on affecte nos résultats aux champs du formulaire // on affecte nos résultats aux champs du formulaire document.getElementById("jours").innerHTML = diff_jours; document.getElementById("heures").innerHTML = diff_heures; document.getElementById("minutes").innerHTML = diff_minutes; document.getElementById("secondes").innerHTML = diff_secondes; // on relance la fonction pour actualiser à la seconde setTimeout("decompte()",1000);
Merci d'avance !!
|
|
jeudi 29 mai 2008 à 14:01:58 |
Re : Compte à rebours

bultez
|
Bonjour, >>avec l'heure coté serveur. il faut appeler un scipt coté serveur ( asp, php, ruby ... ) qui te retournera l'heure du serveur ( en php par exemple regarde date(' format') ) puis coté javascript, calculer la différence avec l'heure client, faire ce que tu fais en tenant compte de cette différence. il ne faudrait pas appeler le serveur à chaque "boucle" ... risque de saturation !
Cordialement  Bul [ mon Site] [ M'écrire]
|
|
jeudi 29 mai 2008 à 14:08:48 |
Re : Compte à rebours

wadpap13
|
Avec cette ligne que je modifie var aujourdhui = new Date(<?=date('Y,m-1,d,H,i,s')?>); , j'ai tout de meme besoin d'apeller un script ?
Et pourquoi je dois calculer la différence avec l'heure coté client alors que je ne me sers plus de celle-ci ?
|
|
jeudi 29 mai 2008 à 14:16:56 |
Re : Compte à rebours

bultez
|
>>var aujourdhui = new Date(<?php echo date('Y,m-1,d,H,i,s');?>); à l'oeil, comme ça .... mais dans ce cas, il faut le rappeler ce .php ! donc échange client / serveur toutes les secondes ! c'est lourd, pénalisant... ! si tu récupérais l'heure serveur 1 fois et une seule, tu n'aurais plus à appeler le php, tu resterais coté client. comme l'heure client et celle serveur sont probablement différentes et que tu veux afficher l'heure seveur, il faut bien calculer la différence
Cordialement  Bul [ mon Site] [ M'écrire]
|
|
jeudi 29 mai 2008 à 14:40:29 |
Re : Compte à rebours

wadpap13
|
Je vois pas comment mettre celà en oeuvre.
La je defini une cible qui est la date butoire.
Ensuite je fais var diff_mms = cible.getTime() - aujourdhui.getTime(); aujourdhui etant l'heure du serveur.
Qu'est ce je dois faire pour faire la différence avec l'heure du client ?
|
|
jeudi 29 mai 2008 à 14:54:05 |
Re : Compte à rebours

bultez
|
la différence enre 2 heures... c'est un - l'heure serveur tu l'as récupérée.... <?php met l'heure serveur dans une variable js par exemple ?> html et javascript calcul différence avec heure client setTimeout d'un fonction qui fait : affichage heure client + différence
Cordialement  Bul [ mon Site] [ M'écrire]
|
|
jeudi 29 mai 2008 à 15:11:59 |
Re : Compte à rebours

wadpap13
|
Mais en fait l'algo je l'ai. C'est plutot la syntaxe qui me pose probleme :
Voila ce que j'ai mis et ca fonctionne pas :
function decompte() { // la date courante var aujourdhui1 = new Date(<? date('Y,m-1,d,H,i,s') ?>); var aujourdhui2 = new Date(); var aujourdhui = aujourdhui1.getTime() - aujourdhui2.getTime(); // le total de millisecondes de différences var diff_mms = cible.getTime() - aujourdhui2.getTime() - aujourdhui.getTime(); .....
|
|
vendredi 30 mai 2008 à 08:07:25 |
Re : Compte à rebours

bultez
|
et tu as une erreur ? pas regardé le reste, mais déjà : var aujourdhui1 = new Date( "<?php echo date('Y,m-1,d,H,i,s'); ?> "); mais regarde ce qui est généré.
Cordialement  Bul [ mon Site] [ M'écrire]
|
|
vendredi 30 mai 2008 à 09:54:24 |
Re : Compte à rebours

bultez
|
aller.... ch'tiot début.... var ds=new Date("<?php echo date("F j, Y, g:i a");?>"); alert(ds); var dm=new Date(); alert( "date serveur : "+ds+"\r\n"+ "date micro : "+dm+"\r\n"+ "différence : "+(ds-dm)); je ne parle pas des fuseux horaires, et tu devaris savoir faire le reste....
Cordialement  Bul [ mon Site] [ M'écrire]
|
|
vendredi 30 mai 2008 à 12:21:05 |
Re : Compte à rebours

wadpap13
|
Si je mets var aujourdhui = new Date("<?php echo date('Y,m-1,d,H,i,s'); ?>");
Il me met un truc du type : NaN : NaN NaN à la place des valeurs de date et heure.
Si j'enlève les guillemets par contre var aujourdhui = new Date(<?php echo date('Y,m-1,d,H,i,s'); ?>);
il me met bien la bonne heure du serveur, mais le compteur n'est pas dynamique. Il faut à chaque fois que je reload la page pour savoir où le compteur en est....
|
|
Cette discussion est classée dans : minutes, var, heure, diff, mms
Répondre à ce message
Sujets en rapport avec ce message
Chrono JS avec heure serveur [ par basto ]
Bonjour, j'ai fait un amalgame de script pour obtenir un chronometre qui affiche la différence de temps écoulé depuis une date php antérieur et la dat
Afficher texte avec X et Y [ par bshaka ]
Bonjour à tous,j'ai trouvé sur le web cette fonction qui affiche date et heure à une position x et y, pour l'appeler, je fais :InitHorloge(265,56,"fon
Affichier un texte avec la position X et Y [ par bshaka ]
Bonjour à tous,j'ai trouvé sur le web cette fonction qui affiche date et heure à une position x et y, pour l'appeler, je fais :InitHorloge(265,56,"fon
calendrier avec heure et minutes [ par info20072008 ]
salut pouvez vous me montrer le code qui me permet d'ajouter à ma jsp un calendrieret avoir la possibilité de choisir l'heure et les minutes et le
compte a rebours [ par valkerio ]
bonjour voila j'ai trouve un petit script sur ce site mais je voudrais bien un peu le modifier mais je ne connais pas grand chose en javascript. donc
problème de passage de valeurs dans fonction [ par tkoniez ]
Bonjour,je n'arrive pas à passer des valeurs dans une fonction... PS : sans passage de valeurs la même fonction tourne sans problème (fonction : Trans
Problèmes affichage horloges en direct [ par santille ]
Bonjour, Ci-dessous le code qui me pose problème. Je voudrais afficher l'heure qu'il fait à Tokyo (GMT+9, sauf erreur) mais je ne sais pas comment le
heure en temps réel [ par Mezixx ]
Bonjour,comment modifier ce srcipt (et pas en mettre un autre) pour qu'il m'affiche l'heure en temps réel. var ladate=new Date(); var d=ladate.getDay(
Heure programmée [ par newsmatique ]
bonjour,je ne connais pas du tout le javascript et j'aimerais faire un script qui :Quand l'heure est : 19H00 j'ouvre un popup mais sa sans recharger l
Insérer l'heure dans une zone texte via l'évènement onclick [ par ecolom ]
Bonjour à tous, je cherche en vains une fonction qui me permet d'insérer l'heure via un onclick dans une zone input. En effet, j'ai un formulaire ave
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio [WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|