Finne tidssone via JavaScript
Det 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.
- var currenttime = new Date();
- var ct = Math.floor(currenttime.getTime() / 1000);
- var st = '<?php echo (time() - 3600 * 1); /* set relative to GMT */?>';
- var ctz = Math.round((ct-st)/3600);
- // ctz is now the client's timezone
Se demo av scriptet » (bruker jQuery i tillegg for å endre select-attributten på option-elementet)
Tagger: javascript, time zone
Flotte poster så langt Mikael, fortsett sånn!
Stilig funksjon, meget mulig jeg kommer til å bruke noe sånt en gang.