Nejste přihlášen(a)
Pokud používáte funkčnost závislou na čase MySQL serveru (např.
NOW(), CURRENT_TIMESTAMP), může vzniknout pěkný
zmatek, když je pracuje v jiné časové zóně než PHP server.
Tak si říkám, co při iniciaci spojení zavolat:
query("SET time_zone='" . date('P') . "'");
Co myslíte?
Klidne, ale urcite by to chtelo moznost deaktivace.
Uz jsem se napr setkal s tim, ze jsem musel korigovat pocet hodin pri posunu casu. Tenkrat jsem uvazoval zda by bebylo vhodnejsi mit data nebo databazi v UTC. Ale ted si nejsem jist zda UTC taky nema jinaci letni a zimni cas.
UTC nemá letní a zimní čas, pokud vím, právě proto jej používám pro data, která potřebuji sbírat kontinuálně nezávisle na časových posunech.
Tak takhle vychytavka me ted vzala hodinu hledanim co se to sakra pri
prechodu na letni cas stalo s vystupem v aplikaci… :)
Presne jak rika phx a blacksun tak UTC neresi tuhle nasi uzasnou casovou
vychytavku a co jsem koukal na reseni do komentaru v mysql manualu tak
nejsnadnejsi je prave nastavit timezone na 00:00
Znovunastaveni napr. v bootstrapu (u Nette aplikaci) uz na vystup nemelo vliv..
Slo by to prosim vypinat i nejak jinak nez zakomentovanim… :)
Diky!
Editoval crempa (1. 4. 2010 20:57)
Přidám se k poslednímu dotazu – chtělo by to umožnit přes konfiguraci vypnutí (defaultně zapnuto) této funkce.
Narazil jsem teď na problém při spolupráci s prehistorickou MySQL 4 (ano, i to ještě někde běží) – nechce se mi opouštět pohodlí dibi a přitom MySQL 4 nezná proměnnou time_zone. A ano, chtěl bych přemigrovat, ale to bude chvíli trvat :-)
Jsem zvědav, na co ještě narazím…
BigCharlie napsal(a):
Přidám se k poslednímu dotazu – chtělo by to umožnit přes konfiguraci vypnutí (defaultně zapnuto) této funkce.
Narazil jsem teď na problém při spolupráci s prehistorickou MySQL 4 (ano, i to ještě někde běží) – nechce se mi opouštět pohodlí dibi a přitom MySQL 4 nezná proměnnou time_zone. A ano, chtěl bych přemigrovat, ale to bude chvíli trvat :-)
Jsem zvědav, na co ještě narazím…
Rozumím, ale nebylo by lepší udělat DibiMySQL4Driver, zainkludovat ho
společně s dibi a pak v konfiguraci dát driver=mysql4? Nebo by
se mohl dát do driveru test na verzi MySQL.
crempa napsal(a):
Tak takhle vychytavka me ted vzala hodinu hledanim co se to sakra pri prechodu na letni cas stalo s vystupem v aplikaci… :)
Presne jak rika phx a blacksun tak UTC neresi tuhle nasi uzasnou casovou vychytavku a co jsem koukal na reseni do komentaru v mysql manualu tak nejsnadnejsi je prave nastavit timezone na 00:00
Můžeš mi to prosím ještě podrobněji vysvětlit? Resp. bylo by řešením nastavovat time_zone na 00:00?
Rozumím, ale nebylo by lepší udělat DibiMySQL4Driver, zainkludovat ho společně s dibi a pak v konfiguraci dát
driver=mysql4? Nebo by se mohl dát do driveru test na verzi MySQL.
nejsem si jistý, Davide, zda by to za to z hlediska budoucnosti stálo. Při testu PHP 5.3 jsem narazil na to, že knihovna s ním dodávaná MySQL 4.0.xx nepodporuje (pokud si to dobře pamatuji, vyžadovala 4.1+) – nezkoumal jsem alternativy. A něco mi říká, že jsem jeden z posledních v Evropě (v lepším případě), kdo s tím bojuje.