Tijd klopt niet

Status
Niet open voor verdere reacties.

pankmeister

Gebruiker
Lid geworden
15 jul 2008
Berichten
106
Ik heb een site wat gehost staat op een server die gebruikt maakt van de Europe/Berlin tijdzone. Echter loopt deze tijd enorm fout.
Op mijn pc is het nu 20:31:00 (correcte tijd)
Op de site is het nu 19:39:40 (foute tijd)
Ik toon mijn tijd mbv het date() commando: date("Y-m-d H:i:s")
Is er een mogelijkheid om de tijd toch correct op mijn site te krijgen, door deze van een andere site te laden od?
 
Er zijn genoeg RSS-feeds te vinden, daar zou ik eens naar zoeken.
 
Er zijn genoeg RSS-feeds te vinden, daar zou ik eens naar zoeken.

Ik snap niet wat je bedoelt met RSS-feeds, want hier vind ik niets over terug hoe ik dit kan gebruiken in combinatie met php.
Ik heb via een site een teller kunnen maken wat de correcte tijd weergeeft (http://free.timeanddate.com/clock/i16v23il/n48/tlbe14/fn7/fcfff/tc000/pc000/tt0/tw0/tm3/td2/th1/tb4), maar deze moet ik laden met een inline frame, waardoor ik de tijd dus niet kan opslaan in mijn database; wat de bedoeling is.
Iemand die mij op weg kan helpen?
 
Ik heb een script gevonden wat overeenkomt met mijn bedoeling.
Echter loopt de tijd nog een 5tal uur voor (waarschijnlijk omdat dat de tijd van canada is).
Weet er iemand waar ik de tijdzone kan aanpassen om het correcte uur te krijgen?

<?php
/* Query a time server
(C) 1999-09-29, Ralf D. Kloth (QRQ.software) <ralf at qrq.de> */
$timeserver = "time.nrc.ca";
$timercvd = query_time_server($timeserver,37);
if (!$timercvd[1]) { # if no error from query_time_server
$timevalue = bin2hex ($timercvd[0]);
$timevalue = abs (HexDec('7fffffff') - HexDec($timevalue) - HexDec('7fffffff')) ;
//$tmestamp = $timevalue - 2208988800; # convert to UNIX epoch time stamp
$tmestamp = $timevalue - 2208963600; # convert to UNIX epoch time stamp

//$datum = date("Y-m-d (D) g:i:s",$tmestamp - date("Z",$tmestamp)); /* incl time zone offset */
$datum = date("(D) g:i",$tmestamp - date("Z",$tmestamp)); /* incl time zone offset */

$doy = (date("z",$tmestamp)+1);

// echo "Time check from time server ",$timeserver," : [<font color=\"red\">",$timevalue,"</font>]";
// echo " (seconds since 1900-01-01 00:00.00).<br>\n";
// echo "The current date and universal time is ",$datum," UTC.<br>\n";
echo "<font color=\"#E8EDFA\" size=\"-2\" face=\"Arial, Helvetica, sans-serif\">";
echo $datum ;
// echo $datum,"<br>\n";
echo ', ';
// echo date("g:i:s",$datum1);
// echo "It is day ",$doy," of this year.<br>\n";
// echo "The unix epoch time stamp is $tmestamp.<br>\n";
} #if (!$timercvd)
else {
echo "Unfortunately, the time server $timeserver could not be reached at this time. ";
echo "$timercvd[1] $timercvd[2].<br>\n";
} # else

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

?>
 
Laatst bewerkt:
wat ook kan, en korter is: (noot dat de tijd altijd dus 1 uur - 8 min.40 sec. voor moet lopen...)

PHP:
//php
$stijd = time();   //time() geeft sec's sinds 1 januari 1970 00:00:00GTM
$verschil = 60*60 - 8*60 - 40;    // noot dat dit makkelijker /beter kan...

$gtijd = $stijd - $verschil;   // dus, tel er 60 min's bij op, haal er 8 min en 40 seconde van af.

$newTime = date("Y-m-d H:i:s", $gtijd);  // je kan ook wat samenvoegen natuurlijk


:thumb:


[edit] in 1 regel wordt het dus:
PHP:
echo date("Y-m-d H:i:s", (time()-(52*60-40)));
dat zou moeten werken in ieder geval ;)
[/edit]
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan