Afficher l'heure d'un pays sur son site

Soyez le premier à donner votre avis sur cette source.

Snippet vu 28 900 fois - Téléchargée 28 fois

Contenu du snippet

Voici un code pour afficher l'heure d'un autre pays sur sont site (par rapport à la france metropolitaine) .
J'en ai eu besoin pour afficher l'heure du japon sur mon site. Comme je n'ai rien trouvé sur ce site ou sur d'autre, je me suis tourné vers une personne qui m'a aidé à le réaliser (merci StOuk).
Je pense que ca me recervira de le mettre ici (au cas ou jloré par accident éffacé ^^), et jespere à d'autre personne également.

Source / Exemple :


<!-- Entre les balise <head></head>

<SCRIPT LANGUAGE="JavaScript">

 var dd, delai;
 function debuteTemps(delai1) {
 var hhmmss = "", min, sec;
delai = delai1;
adate = new Date()
 hhmmss += adate.getHours() + (adate.getTimezoneOffset() / 60) + 9;
 if (hhmmss>=24){hhmmss=hhmmss-24;}
 if (hhmmss < 10) hhmmss = "0" + hhmmss;
 min = adate.getMinutes();
 if (min < 10) hhmmss += ":0" + min;
 else hhmmss += ":" + min;
 sec = adate.getSeconds();
 if (sec < 10) hhmmss += ":0" + sec;
 else hhmmss += ":" + sec;
 hhmmss = " " + hhmmss;
 document.Temps1.heure.value = hhmmss;
 dd = setTimeout("debuteTemps(delai)",delai1);
 }

 </SCRIPT>

<!--   Modifier les balises <body> et ajouter le <form> et <input>

<BODY onLoad="debuteTemps(1000)" onUnload="clearTimeout(dd)">
<FORM NAME="Temps1">
<INPUT TYPE="text" NAME="heure" SIZE="12"><BR></FORM>
</body>

Conclusion :


Ce qui fait le décalage horair c'est --> (adate.getTimezoneOffset() / 60) + 9;
Le +9 etant la differrence d'heure entre la france et le japon.

Par contre si quelqu'un modifie ce script pour que cette heure reste la même quelque soit le pays ou le visiteur ce trouve (quebec par exemple), je suis preneur :)

Merci de votre attention ^^

A voir également

Ajouter un commentaire Commentaires
Arto_8000 Messages postés 1044 Date d'inscription lundi 7 mars 2005 Statut Membre Dernière intervention 13 juillet 2010 7
24 nov. 2005 à 23:08
Le décalage horaire se fait à partir de l'heure de l'ordinateur de celui qui visite la page, donc si tu veux que l'heure soit toujours la même il est préférable de se tourner vers le PHP (language serveur donc la date du serveur) et en PHP ça serait :

<?PHP
echo date("H:i:s");
?>

et si tu veux plus d'info sur les dates en PHP voici un link :
http://ca3.php.net/manual/fr/function.date.php
setasan9 Messages postés 98 Date d'inscription lundi 14 juin 2004 Statut Membre Dernière intervention 16 mars 2009
25 nov. 2005 à 11:20
Merci beaucoup :) c bon a savoir ^^
dvdstory Messages postés 192 Date d'inscription dimanche 23 janvier 2005 Statut Membre Dernière intervention 10 août 2009
14 févr. 2006 à 20:11
Je crois qu'il y a un autre moyen que le PHP.
Au lieu de demander au PC l'heure qu'il utilise, on peut lui demander l'heure GMT ou UTC, ça veut dire la meme chose ils ont juste changer les initials. Donc faudrait changer ton GetHours par une autre valeur que je ne connais pas par coeur pour avoir l'heure GMT (Grennwitch Meridien Time) et faire ton offset +1 pour avoir l'heure de la france et offset +10 pour le Japon par exemple.
dvdstory Messages postés 192 Date d'inscription dimanche 23 janvier 2005 Statut Membre Dernière intervention 10 août 2009
14 févr. 2006 à 20:15
Je croit que j'ai trouvé getUTCHours()
dvdstory Messages postés 192 Date d'inscription dimanche 23 janvier 2005 Statut Membre Dernière intervention 10 août 2009
14 févr. 2006 à 20:47
Y a un truc que je comprend pas l'heure de la france est GMT +1 et celle du Japon GMT +9 et ton code est basé sur leur du PC (donc france) donc pour arriver de l'heure Française a celle de l'heure Japonaise il faut faire +8 et non pas +9 et pourtant tu arrive quand meme a l'heure du JAPON donc à chaque fois il enlève une heure. (Si je me suis trompé quelque par, qu'on me le signal)

Donc voici ton code que j'ai modifié
Y a juste getUTCHours() et getUTCMinutes() que j'ai rajouté pour obtenir l'heure UTC.
( http://fr.wikipedia.org/wiki/Temps_universel_coordonn%C3%A9 )

Mais j'ai aussi le meme problème que toi il m'enlève une heure. La france est à UTC +1 pourtant pour arriver a l'heure de la france je dois faire +2

<SCRIPT LANGUAGE="JavaScript">
var dd, delai;
function debuteTemps(delai1) {
var hhmmss = "", min, sec;
delai = delai1;
adate = new Date()
hhmmss += adate.getUTCHours() + (adate.getTimezoneOffset() / 60) + 2;
if (hhmmss>=24){hhmmss=hhmmss-24;}
if (hhmmss < 10) hhmmss = "0" + hhmmss;
min = adate.getUTCMinutes();
if (min < 10) hhmmss += ":0" + min;
else hhmmss += ":" + min;
sec = adate.getSeconds();
if (sec < 10) hhmmss += ":0" + sec;
else hhmmss += ":" + sec;
hhmmss = " " + hhmmss;
document.Temps1.heure.value = hhmmss;
dd = setTimeout("debuteTemps(delai)",delai1);
}
</SCRIPT>


<FORM NAME="Temps1">

</FORM>

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.