Toon posts:

Javascript Klok

Pagina: 1
Acties:

Verwijderd

Topicstarter
ik het het volgende script om de tijd op mijn website weer te geven.

nu wil ik hem alleen 9 uur later hebben lopen dan dat mijn server loopt.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<script language="Javascript1.2"> <!--
        var tags_before_clock = "<small>"
        var tags_after_clock  = "</small>"

if(navigator.appName == "Netscape") {
document.write('<layer id="clock"></layer><br>');
}

if (navigator.appVersion.indexOf("MSIE") != -1){
document.write('<span id="clock"></span><br>');
}

function upclock(){ 
var dte = new Date();
var hrs = dte.getHours();
var min = dte.getMinutes(); 
var sec = dte.getSeconds();
var col = ":";
var spc = " ";
var apm;

if (12 < hrs) { 
apm="PM";
hrs-=12;
}

else {
apm="AM";
}

if (hrs == 0) hrs=12;
if (min<=9) min="0"+min;
if (sec<=9) sec="0"+sec;

if(navigator.appName == "Netscape") {
document.clock.document.write(tags_before_clock
+hrs+col+min+col+sec+spc+apm+tags_after_clock);
document.clock.document.close();
}

if (navigator.appVersion.indexOf("MSIE") != -1){
clock.innerHTML = tags_before_clock+hrs
+col+min+col+sec+spc+apm+tags_after_clock;
}
} 

setInterval("upclock()",1000);
//-->
</script>


Heb al wat zitten prutsen maar dat lukt niet echt goed.
iemand idee?

  • coubertin119
  • Registratie: Augustus 2002
  • Laatst online: 25-05 19:01
Met JavaScript neem je de tijd van de client, en niet die van de server. Je zal een door de server gegenereerde datum moeten meesturen, en die gebruiken als vertrekpunt.

Tuurlijk japioo, daarmee kan je ook die setInterval() volhouden, iedere seconde een refresh puur voor een datumpje :Z

[ Voor 27% gewijzigd door coubertin119 op 04-02-2004 20:34 ]

Skat! Skat! Skat!


Verwijderd

Of iets met php. Dan is het wel mogelijk!

Verwijderd

Je zult server-side een file moeten genereren met de server-tijd en die als JavaScript inladen...
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<? 
// --------------------------------
// Start PHP
// --------------------------------
// tijd in seconden sinds
// January 1 1970 00:00:00
$iTime = time();

print("var _iTime = $iTime;");
?>

// --------------------------------
// Start JavaScript
// --------------------------------
// JavaScript Date() gebruikt milliseconden...
_iTime *= 1000; 

function upclock(){ 
    var dte = new Date(_iTime);
    // ...etc...
}

En deze dan inladen als
HTML:
1
<script src="klok.php" type="text/javascript"></script>

[ Voor 6% gewijzigd door Verwijderd op 04-02-2004 23:09 . Reden: js != css :o ]


  • BetuweKees
  • Registratie: Januari 2003
  • Laatst online: 15-05 20:44

BetuweKees

Flipje uit Tiel

is dit niet handiger?

PHP:
1
2
$serverDate = mktime(date("H")+6, date("i"), date("s"), date("m"), date("d"), date("Y"));
echo "var serverDate = new Date(\"". date("H:i:s, F n, Y", $serverDate) ."\");";


(maakt eerst in php datum object voor server (6 uurtjes in de toekomst dan wel) en print dit vervolgens op zodanige manier dat JavaScript er wederom een datum object van maakt)

Through meditation I program my heart to beat breakbeats and hum basslines on exhalation -Blackalicious || *BetuweKees was AFK; op de fiets richting China en verder


Verwijderd

Ja, maar ik dacht: laat ik het overzichtelijk houden... ;)

  • BetuweKees
  • Registratie: Januari 2003
  • Laatst online: 15-05 20:44

BetuweKees

Flipje uit Tiel

dat zelfde dacht ik toen ik gezien had wat ik eigenlijk gepost had
is die van jouw toch wel wat korter.. maar ze doen hetzelfde.. toch? ;)

Through meditation I program my heart to beat breakbeats and hum basslines on exhalation -Blackalicious || *BetuweKees was AFK; op de fiets richting China en verder


  • Rataplan
  • Registratie: Oktober 2001
  • Niet online

Rataplan

per aspera ad astra

edit:
Van de php heb ik bij nader inzien niks gezegd |:(


Voeg gewoon op regel 21 in:
code:
1
hrs=(hrs+9)%24;
...en klaar is je tijdverschil B)

edit:
En als je 'm 9 uur de andere kant op wil hebben is het (hrs+15)%24 :P

[ Voor 55% gewijzigd door Rataplan op 06-02-2004 02:57 ]


Journalism is printing what someone else does not want printed; everything else is public relations.

Pagina: 1