Mikbe

RSS-feed

Finne tidssone via JavaScript

KlokkeDet blir mye automatisering av småtterier på web her i starten av blogggen. Den første posten var om å finne kjønn ut i fra fornavn. Denne gangen er det tidssone vi skal finne.

Ideen kom fra en forumtråd på Diskusjon.no, hvor det blir foreslått å bruke IP. Dette er en veldig god løsning, men det kan kreve litt å finne land basert på IP, man må bruke en WHOIS-løsning. Disse koster gjerne penger. Dette fungerer heller ikke for land med flere tidssoner, slik som USA, Kanada og Russland.

Inn kommer mine nyervervede JS-skills. I kombinasjon med et serversidespråk, kan nemlig JS brukes til å finne tidssonen. Serverens tid i GMT gis med PHP. Klienten finner sin egen tid, sammenlikner denne med serverens, og regner dermed ut hvilken tidssone som brukes på PC-en.

  1. var currenttime = new Date();
  2. var ct = Math.floor(currenttime.getTime() / 1000);
  3. var st = '<?php echo (time() - 3600 * 1); /* set relative to GMT */?>';
  4. var ctz = Math.round((ct-st)/3600);
  5.  
  6. // ctz is now the client's timezone

Se demo av scriptet » (bruker jQuery i tillegg for å endre select-attributten på option-elementet)

Tagger: ,

Én kommentar

  1. Kim Andre Fosslien Ottesen sier: ()

    Flotte poster så langt Mikael, fortsett sånn!

    Stilig funksjon, meget mulig jeg kommer til å bruke noe sånt en gang.

Kommenter




XHTML: Du kan bruke disse taggene: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>