Session autoStart smart a Form::addProtection

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

Zasekl jsem se na následující věci: mám přihlašovací formulář ve kterém volám addProtection pro ochranu proti CSRF. Za normálních okolností vše normálně funguje. Pokud stránku však navštívím poprvé, resp. v anonymním okně, dostávám však chybu session_start(): Cannot send session cache limiter - headers already sent.

Pokud tomu dobře rozumím (a dost možné ne, takže mě opravte) tak je to tím, že se formuláře vytváří lazy a v momentě vytvoření „Protection“ už je část šablony vypsaná.

Vše řeší autoStart: true do sekce nette ⇒ session v configu, která přepíše výchozí hodnotu autoStart: smart.

Mě by však zajímalo – nemělo by tohle Nette řešit, tudíž bug? Anebo je to má starost, protože …?

Díky za vysvětlení.

Verze: 2.1-dev, 283eaac

David Matějka
Moderator | 6445
+
0
-

rikas to spravne. bohuzel by to bylo asi v podstate neresitelne.

muzes zkusit rucne inicializovat formular uz v presenteru (pres $this['nazevFormu']), coz by melo vytvorit to protection a tudiz nastartovat session

sKopheK
Člen | 207
+
0
-

Direktiva autoStart funguje, díky!

Editoval sKopheK (28. 12. 2013 11:16)