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 | 8218
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 | 8218
…á-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.