RobRobson: Falsche Uhrzeit trotz richtiger Uhrzeit

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.

  1. 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

    1. 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

      1. 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

        1. 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

          --
          RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
      2. 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

    2. Ich würde die Zeit immer mit javascript abfragen:

        
      date = new Date();  
      h = date.getHours();  
      m = date.getMinutes();  
      s = date.getSeconds();  
      
      
      1. 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:(