Am 09.01.15 um 11:49 schrieb Marc Willmann:
Hallo Bernd,
es gibt schon Konfigurationen wo je nach Situation eine Zeitangabe
scheinbar um Stunden springt, weil bei der ganzen Umrechnerei zwischen
UTC und aktuell benutzter Zeitzone (Eingabe, Ausgabe, Viewhelper, ...)
alles komplizierter gemacht wird als es benötigt wird (und z.B.
fehlerhafterweise bei jedem Bearbeiten ein Offset addiert wird).
Gerade wenn man nur ein Datum benötigt (und benutzen will) und die
Uhrzeit dann auf 0:00 gesetzt wird kann eine Änderung um eine Stunde auf
einmal im vorherigen Tag landen.
DAS sollte natürlich auf keinen Fall passieren; aus diesem Grund ist es
ja auch exterm wichtig, dass die Serverzeit in einer definierten
Zeitzone (UTC) geführt wird. Und zwar unabhängig davon, ob der Server in
UTC steht (tut er bei mir meist nicht) oder nicht.
Ein beliebter Fehler ist es, dem Server die Ortszeit einzugeben; korrekt
ist aber UTC und zusätzliche die Zeitzone zu pflegen. Auf den ersten
Blick macht das keinen Unterschied, aber genau für Dein
Anwendungsszenario ist das schon relevant.
das könnte dann aber z.B. bei TYPO3 dazu führen dass der Inhalt einer
deutschen Website nicht pünktlich zum Datumswechsel sondern erst eine
(oder im Sommer zwei) Stunden später ausgetauscht wird. Da das mittenin
der Nacht ist und bei den meisten Seiten damit zu eienr Zeit mit wenig
Besuchern mag das akzeptabel bis irrelevant sein. aber manchmal ist es
schon wichtig (zb. wenn ein Formular bis genau zum Ende eines
Anmeldezeitraumes sichtbar/aktiv sein muss)
egal ob BE oder FE: wenn man es sich genau überlegt braucht es einiges
an Zusatzkonfiguration um ein Verhalten genauer festzulegen.
betrachten wir mal drei Standort: Japan, Deutschland, New-York / Editor,
Server, Besucher (beliebig zuordnen bar)
jetzt heißt es: eine Information soll ab 20:00 angezeigt werden.
20:00 Japan, 20:00 Deutschland oder 20:00 New York?
die Zeitzone des Editors oder die des Servers oder die des Seitenbesuchers?
20:00 Uhr in der Zeitzone des Servers. Über alles andere kann der Server
keine Entscheidungen treffen. Sollte der Editor in einer anderen
Zeitzone sitzen, müsste er tatsächlich umrechnen - BEIM Eintragen der
Zeit. Das ist aber unabhängig von TYPO3 oder auch nur des Internets;
wenn ich nach Mexiko telefoniere, muss ich mir auch überlegen, wie spät
es dort ist, um nicht alle aus dem Bett zu holen... ;-)
s.o.
Wenn der Editor eine solche Zeitangabe einträgt soll seine Zeitangabe
dann aus seiner Zeitzone auf Serverzeitzone (oder Besucherzeitzone)
umgerechnet werden oder unverändert übernommen werden (um dann bei der
Auswertung erst interpretiert werden)?
Das ist eine Frage des Workflows; pflegen regelmäßig nur Redakteure in
nur EINER Zeitzone einen Server in einer anderen Zone, könnte man den
Offset natürlich automatisch berechnen. Das ist bei mir tatsächlich aber
selten der Use-Case; wichtig ist eben, dass der Server die Zeit in UTC
in die Datenbank ablegt und beim Ausgeben der Zeit in die korrekte
Zeitzone umrechnet. Damit habe ich bislang wenig bis keine Probleme gehabt.
Probleme gab's regelmäßig nur dann, wenn Server auf Lokalzeit
konfiguriert waren und dann auf Datum 0:00 geprüft wurde (die
gespeicherte Zeit aber 23:00 oder 01:00 war).
Ich habe jetzt keine genauen Informationen, nur so eine etwas unkonkrete
Erinnerung:
ich meine irgendwo gelesen zu haben, dass PHP und javascript bei den
Aus- und Eingaben von Zeiten/Datumsangaben individuell Zeitzonen ein-
und ausrechnen. Und gerade bei der Benutzung fertiger Libraries kann man
das eben nicht immer deaktivieren/konfigurieren.
Das führt dann immer wieder zu diesen unliebsamen Zeitverschiebungen, da
PHP ja auf dem server, JS aber auf dem (editor)-Client ausgeführt
werden, und die ja unterschiedliche Zeitzonen haben können.
bernd
--
http://www.pi-phi.de/cheatsheet.html
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german