Presmerovanie na Homepage z SignPresenter ak je uživatel prihlásený
- procomputer
- Člen | 5
Ahoj, pls ak zadam v app manuálne URL http://localhost:3000/sign/in zobrazi sa mi login formulár aj keď je uživateľ prihlásený.
`
<?php
public function actionIn()
{
if ($this->getUser()->isLoggedIn()) {
$this->redirect('Homepage:');
}
}
?>
`
Myslel som si, že to ošetrím testom v actionIn() ale skončí to chybou
„Possible problem: you are sending a HTTP header while already having some
data in output buffer. Try Tracy\OutputDebugger or start session earlier.“
pls poradíte niekto „uplnému začiatočníkovy“… Vopred dik.
Editoval procomputer (29. 3. 2017 18:56)
- David Matějka
- Moderator | 6445
ahoj, nekde se ti vypisuje nejaky znak do stranky, nez dojde
k presmerovani
casto to byva
- nejaky debug dump
- UTF8 BOM znak
- whitespace za ukoncovaci zavorkou
?>
BOM muzes najit a smazat treba pres tento tool
whitespace za ?>
vyresis tak, ze ji nebudes psat (neni
povinna)
pokud nic nenajdes, zkus – jak ti ta chyba radi – pouzit
OutputDebugger. Konkretne tak, ze do bootstrapu (treba hned za require autoload)
das Tracy\OutputDebugger::enable()
a ono ti to rekne, kde se
vypisuje prvni vystup do stranky
- procomputer
- Člen | 5
Ahoj, ďakujem za rýchlu a správnu radu, mal som tam ešte jeden debug výpis aby som vobec zistil poradie volania samotných metod v triede (ako som písal uplný začiatočník). DIK
- CZechBoY
- Člen | 3608
životní cyklus je v dokumentaci https://doc.nette.org/…n/presenters#…
Jinak doporučuju používat Tracy\Debugger::barDump
místo
klasickýho echo
, víš potom odkud dumpuješ a neomezuješ tim
přesměrování (taky můžeš dumpovat a víš co si dumpnul před
přesměrováním).
Editoval CZechBoY (30. 3. 2017 15:43)