V databázi mám DateTime 0000–00–00 00:00:00, v šabloně se ale vypisuje –0001–11–30 00:00:00

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

Ahoj,
v databázi mám tabulku objednavka_jidelniListek, ve které mám mimo jiné sloupec casVyrizeni. U některých objednávek je v tomto sloupci z různých důvodů (například zatím nevyřízená objednávka) hodnota 0000–00–00 00:00:00.

V šabloně si tento sloupec vypisuji takto:

$dataObjednavky = $this->database->table('objednavka_jidelniListek');

foreach($dataObjednavky as $obj){
	 echo($obj['casVyrizeni']."<br>");
}

Řádky, kde je v databázi DateTime například 2014–09–20 08:32:44, tak se v šabloně vypíše normálně 2014–09–20 08:32:44. U řádků, kde je v databázi DateTime 0000–00–00 00:00:00, tak se ale v šabloně vypíše -0001–11–30 00:00:00. Vůbec ale nerozumím tomu, proč se to tak děje.
Napadá vás někoho něco?

Díky za případné rady.
Dan

Milo
Nette Core | 1283
+
+2
-

Časová zóna. 0000-00-00 je u MySQL úlet. Použij NULL.

Editoval Milo (26. 9. 2014 13:19)

hrach
Člen | 1838
+
0
-

To časovou zonou nema nic společneho. Jedna se o klasický přepočet v php.

iguana007
Člen | 970
+
+2
-

Viz.: http://stackoverflow.com/…00-00-000000

Btw. už se to tady řešilo: https://forum.nette.org/…-it-in-nette

Editoval iguana007 (26. 9. 2014 12:59)