Nette banan.cz – problem s hlavickou

- TanisCZ
- Člen | 80
Zdravím,
Tak už se mi podařilo dojednat přesunutí domeny na novou verzi php.
Všechno celkem v pořádku až na jednu věc.
Mám BasePresenter, kde zjištuju jestli je uživatel přihlášený a podle
toho dávám informaci. Ostatní presentery dědí právě od BasePresenteru.
Tak a pokud v BasePresenteru zavolám metodu
if ($user->isAuthenticated())?>
dostanu odpověď :
Uncaught exception 'InvalidStateException' with message 'Headers already sent
Jak by se to dalo vyřešit?

- romansklenar
- Člen | 655
Pak zkontroluj kódy, jestli nekdě v aplikaci něco nevypisuješ přes
echo, var_dump, Debug::dump().
EDIT: phx byl rychlejší
Editoval romansklenar (13. 11. 2008 13:09)

- David Grudl
- Nette Core | 8285
Celé znění té výjimky je
"Headers already sent (output started at file:line).", kde file a
line dost napoví. Zkus se podívat na nezkrácené znění výjimky.

- romansklenar
- Člen | 655
Prázdný znak se ti tam může dostat, ikdyž máš třeba začátek nějakého php souboru odřádkovaný enterem.
------ tady je začátek souboru a po něm následuje jeden nebo více bílých znaků
<?php
// your nice code
...

- David Grudl
- Nette Core | 8285
…á-né-bó když je konec php souboru odřádkovaný enterem:
<?php
// your nice code
?>
------ tady je konec souboru
Řešení: nikdy nepoužívat ?>.

- romansklenar
- Člen | 655
Tak, že když nebudeš používat ukončovací ?> tak tím
nic nezkazíš, právě naopak. Není to nutné. BTW je tak psáno
i celé Nette.