Přestal fungovat localhost – DateTimeZone::__construct(): Unknown or bad timezone ()

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Prochy
Člen | 91
+
0
-

Zdravim,
nevim jak je to možný, ale dnes, když sem zapnul xampp a pokusil se načíst projekt, tak to vyhodilo chybovou hlášku:

DateTimeZone::__construct(): Unknown or bad timezone ()

Zkusil jsem načíst i zálohovanou verzi z minulého týdne, která fungovala bezproblému, ale stejný problém. Tak bych se chtěl zeptat, čím by to mohlo být způsobeno. Myslim si, že jsem nic v kódu neměnil, takže si myslim, že chyba by mohla být někde v xamppu.

Verze xamppu:
ApacheFriends XAMPP version 1.7.7

+ Apache 2.2.21
+ MySQL 5.5.16 (Community Server)
+ PHP 5.3.8 (VC9 X86 32bit thread safe) + PEAR

22
Člen | 1478
+
0
-

Jednak to moc s Nette nesouvisí a druhak si odkomentuj v neonu direktivu nastavujici timezonu..

Prochy
Člen | 91
+
0
-

Ta už byla odkomentovaná, takže sem moc nepokročil. Můj config:

#
# SECURITY WARNING: it is CRITICAL that this file & directory are NOT accessible directly via a web browser!
#
# If you don't protect this directory from direct web access, anybody will be able to see your passwords.
# https://nette.org/en/security-warning
#
common:
	parameters:
		database:
			driver: mysql
			host: localhost
			database: database
			username: username
			password: heslo
			lazy: TRUE #s db se pracuje az kdyz je potreba
			profiler: TRUE #debug panel

	php:
			date.timezone: Europe/Prague
		# session.save_path: "%tempDir%/sessions"
		# zlib.output_compression: yes
22
Člen | 1478
+
0
-

Tak to nevim, ale Nette za to určitě nemůže :-) Zjisti, jakou zonu mas aktualne nastavaneou, tam kde to vyhodi chybu, asi tam je neco divnyho.

aGr
Člen | 45
+
0
-

Já měl úplně stejný problém. Poprvé se to objevilo při použití $iterations v šabloně, pak i když jsem to opravil jsem stále dostával tu samou chybu. Nechal jsem to být a za pár hodin to šlo. Druhý den se opakovalo to samý. Tentokrát jsem zjistil, že ve firefoxu mi to běží, ale v Chromu to na mě křičí tuhle hlášku (zkus to).

Proč, na to se mě neptejte, ale opravdu nekecám, kód byl stejný.

Apache/2.2.22 na Ubuntu

Editoval aGr (28. 6. 2012 15:21)

LeonardoCA
Člen | 296
+
0
-

Pozor chyba může být i úplně jinde.
Stalo se mi nedávno něco podobného a chybu mi začalo vyhazovat inicializace session v nette, ale bylo to nakonec nějakou logickou chybou v aplikaci, kdy se mi dostaly do šablony úplně nesmyslné data...... Když jsem vymazal adresář s session soubory tak aplikace jela do doby, než jsem jednou zobrazil stránku, kde problém vznikal.. Když jsem opravil generování dat, tak problém zmizel… nějak to souviselo s dibi fixem timezony, ale nestudoval jsem to do hloubky …

Prochy
Člen | 91
+
0
-

Tak po promazání session už vše opět funguje. Bohužel nevim, co mi mohlo ty session pokazit na tolik, že mi to házelo tuto chybu. Snad to byla jenom náhoda, ikdyž o tom pochybuji.

Jan Tvrdík
Nette guru | 2595
+
0
-

V době kdy startuješ session dojde k deserializaci v session umístěných dat. Pokud v té době nefunguje autoloading nebo je špatně konfigurace PHP (jako zde), tak to skončí chybou. Zkus si manuálně do session uložit instanci DateTimeZone.