Weet iemand hoe je verbinding kan maken met een tijdserver, bv. time.nist.gov, of hoe ik in Windows 2000 SP 4 kan instellen dat mijn klok automatisch aangepast wordt aan de atoomtijd?

Op die manier wil ik mijn computertijd laten synchroniseren zonder dat ik een speciaal programma hoef op te starten en moet pingen.
En het kan natuurlijk ook leuk zijn op een website :)
Een keer een class maken (moet toch niet moeilijk zijn? Zo'n simpel iets als een current timestamp ophalen?). Dan komt nog een probleem: hoe stel je de tijd van de computer in via PHP?
Jelmer schreef op 27.09.2005 22:09
Een keer een class maken (moet toch niet moeilijk zijn? Zo'n simpel iets als een current timestamp ophalen?). Dan komt nog een probleem: hoe stel je de tijd van de computer in via PHP?

Dacht ik ook, maar weet de commando's niet om die tijd op te halen? Als het al met commando's werkt? ^^

De computertijd instellen via php is niet zo erg; dat kan later wel met een COM-object of zo. Kan het voorlopig dan wel gebruiken op websites :)

Edit:
Ik heb al een class gevonden die via php de time syncroniseert met de nist-servers :)
Ziet er na wat documentatie gelezen te hebben toch vrij ingewikkeld uit :S

Maar dan zoek je even om te kijken of iemand voor je al eens op het idee was gekomen, en dan kom je dit tegen:

How to do time server queries

Open a socket connection to the time server on port 13 (daytime) or 37 (time), send an empty string (newline), read the result and close the connection. Then look at the result and display.

The PHP-code is easy and should be self-explaining.

<?php # PHP V4

function query_time_server ($timeserver, $socket) {
/* Query a time server
(C) 1999-09-29, Ralf D. Kloth (QRQ.software) <ralf at qrq.de> */

$fp = fsockopen($timeserver,$socket,$err,$errstr,5);
# parameters: server, socket, error code, error text, timeout
if ($fp) {
fputs($fp,"\n");
$timevalue = fread($fp,49);
fclose($fp); # close the connection
}
else {
$timevalue = " ";
}

$ret = array();
$ret[] = $timevalue;
$ret[] = $err; # error code
$ret[] = $errstr; # error text
return($ret);

} # function query_time_server
?>

Reageren