Falsche Uhrzeit trotz richtiger Uhrzeit
RobRobson
- php
0 Sven Rautenberg
Moin,
ich komme grade echt nicht weiter. :-/
Ein einfaches:
echo date('Y-m-d H:i:s');
Zeigt mir eine -2h versetzte Uhrzeit an.
Der Server geht richtig:
server:~# dpkg-reconfigure tzdata
Current default timezone: 'Europe/Berlin'
Local time is now: Sun Jul 10 11:21:24 CEST 2011.
In beiden php.ini's die ich finden konnte:
/etc/php5/cli/ und /etc/php5/apache2/
wurden die Werte meines Wissens nach richtig gestellt:
;;;;;;;;;;;;;;;;;;
[Date]
; Defines the default timezone used by the date functions
date.timezone = "Europe/Berlin"
;date.default_latitude = 31.7667
;date.default_longitude = 35.2333
;date.sunrise_zenith = 90.583333
;date.sunset_zenith = 90.583333
;;;;;;;;;;;;;;;;;;
Setzt man im script zuvor mit: date_default_timezone_set('Europe/Berlin'); die Zeitzone, zeigt date() plötzlich die richtige Zeit an. Aber das ist kein gangbarer Weg, wegen ausländischer Scriptzugriffe.
Viele Grüße,
Rob
PS: Das Script läuft als Wordpress-plugin, aber auch WP hat die richtige ZZ-Einstellung und sollte ja eh keinen Einfluss auf date() haben.
Moin!
Moin,
ich komme grade echt nicht weiter. :-/
Ein einfaches:
echo date('Y-m-d H:i:s');
Zeigt mir eine -2h versetzte Uhrzeit an.
Der Server geht richtig:
server:~# dpkg-reconfigure tzdata
Current default timezone: 'Europe/Berlin'
Local time is now: Sun Jul 10 11:21:24 CEST 2011.In beiden php.ini's die ich finden konnte:
/etc/php5/cli/ und /etc/php5/apache2/
wurden die Werte meines Wissens nach richtig gestellt:
Was sagt phpinfo()?
Setzt man im script zuvor mit: date_default_timezone_set('Europe/Berlin'); die Zeitzone, zeigt date() plötzlich die richtige Zeit an. Aber das ist kein gangbarer Weg, wegen ausländischer Scriptzugriffe.
Hä? Verstehe ich nicht.
Die Serveruhr läuft auf UTC. Die Zeitzonenangabe konvertiert die Uhrzeit dann in die lokale Zeitzone.
Entweder macht man das serverzentral in der php.ini. Dann hat das Effekt auf ALLE Besucher des Servers, weil die Uhrzeitausgabe in der zentral festgelegten Zeitzone erfolgt.
Oder man macht das jeweils vor Abruf der Zeit entsprechend der Wünsche des Besuchers (den man dazu natürlich kennen müsste) - dann kriegt der Besucher die Uhrzeitangabe in seiner lokalen Zeitzone, die er in seinen Benutzereinstellungen gewählt hat.
- Sven Rautenberg
Hi und Danke schonmal für die Antwort,
Moin!
Was sagt phpinfo()?
date
date/time support enabled
"Olson" Timezone Database Version 0.system
Timezone Database internal
Default timezone Europe/Berlin
date.default_latitude 31.7667 31.7667
date.default_longitude 35.2333 35.2333
date.sunrise_zenith 90.583333 90.583333
date.sunset_zenith 90.583333 90.583333
date.timezone Europe/Berlin Europe/Berlin
Setzt man im script zuvor mit: date_default_timezone_set('Europe/Berlin'); die Zeitzone, zeigt date() plötzlich die richtige Zeit an. Aber das ist kein gangbarer Weg, wegen ausländischer Scriptzugriffe.
Hä? Verstehe ich nicht.
Weil ich mit Benutzer nicht Surfer meinte, sondern Admins die das Plugin auf ihrem Server installieren. Da sollen meine Logeinträge die richtige Zeit des Servers incl. Zeitzione bekommen. ;-)
- Sven Rautenberg
Viele Grüße,
Rob
Da sollen meine Logeinträge die richtige Zeit des Servers incl. Zeitzione bekommen. ;-)
Es soll immer die richtige Zeit des Servers genommen werden, ich will keine Zusätzlichen Befehle verwenden. Also könnte ich jetzt auch einfach alles so lassen wie es ist und die Verantwortung auf die Admins übertagen die das Installieren. Auf meinem persönlichen Testsystem grade, bekomme ich aber falsche Zeiten angezeigt und das will ich mit dem Post hier im Forum beheben.
Viele Grüße,
Rob
Hi,
Weil ich mit Benutzer nicht Surfer meinte, sondern Admins die das Plugin auf ihrem Server installieren. Da sollen meine Logeinträge die richtige Zeit des Servers incl. Zeitzione bekommen. ;-)
Bekommen sie ja auch.
Was „richtig“ ist, bestimmt die jeweilige Konfiguration. Wenn die fehlerhaft ist, ist das nicht deine Baustelle.
Es soll immer die richtige Zeit des Servers genommen werden, ich will keine Zusätzlichen Befehle verwenden. Also könnte ich jetzt auch einfach alles so lassen wie es ist und die Verantwortung auf die Admins übertagen die das Installieren.
Oder es im Script konfigurierbar machen, wenn du nicht voraussetzen willst, dass der Nutzer die entsprechende Konfiguration auf seinem System auch vornehmen kann/darf.
Auf meinem persönlichen Testsystem grade, bekomme ich aber falsche Zeiten angezeigt und das will ich mit dem Post hier im Forum beheben.
Na dann konfiguriere doch bitte erst mal deine eigene Kiste „richtig“, bevor du dir Sorgen um die anderer machst.
MfG ChrisB
Moin!
Hi und Danke schonmal für die Antwort,
Moin!
Was sagt phpinfo()?
Und wenn du es in deinem Wordpress-Plugin aufrufst?
Wie ist dein Wordpress konfiguriert? Welche Zeitzone hast du gewählt?
- Sven Rautenberg
Ich würde die Zeit immer mit javascript abfragen:
date = new Date();
h = date.getHours();
m = date.getMinutes();
s = date.getSeconds();
Hallo,
Ich würde die Zeit immer mit javascript abfragen:
date = new Date();
h = date.getHours();
m = date.getMinutes();
s = date.getSeconds();
damit hast du die Zeit, die auf dem Rechner des Webseiten-Besuchers gilt. Und zwar die Ortszeit. Das ist nicht immer das, was man haben will. Erst recht nicht, wenn man die Uhrzeit am Server braucht.
Ciao,
Martin
--
Die letzten Worte des Neandertalers:
Möchte doch zu gern wissen, was in der Höhle ist ...
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(