Oznámení
$this->query(„SET time_zone=‚“ . date('P‘) . „'“);
před 8 lety
- mcmatak
- Člen | 492
Na serveru se mi nedaří získat správný čas, například datum
1.11.2010 uložený v dtb mi vrací o hodinu více než opravdu je
v databázi uloženo.
Dnešní datum mi vrací v pořádku tak jak je uloženo v dtb.
Nevím kudy do toho, problém asi řeší zakomentování toho řádku v dibi, ale mohl by mě někdo uvést do problému o co tady jde?
díky
před 8 lety
- Milo
- Nette Core | 1119
Jak s MySQL nevím, ale bude to zřejmě podobné jako u PostgreSQL.
Všechny časové údaje (WITH TIMEZONE) se ukládají v UTC. Když si
nastavíš SET TIME ZONE TO ...
tak se všechna data pro klienta
převádějí do nastavené časové zóny a ty se o nic nestaráš.
Tvůj problém bych viděl v přechodu na letní/zimní čas. Zkusil bych si
pohrát s date_default_timezone_set()
nebo (pokud to MySQL umí)
používat datové typy necitlivé na timezone.
Editoval Milo (20. 4. 2011 7:47)
před 8 lety
- mcmatak
- Člen | 492
no nevím, používám datetime v mysql takže, moc na výběr není, samozřejmě to můžu ukládat jako unix_timestamp, ale datetime je prostě standard na mysql
jinak app jede na nette a to jestli se nepletu tak na straně php má nastaveno usprávně časovou zónu, teda alespoň doufám je tam Europe/Prague