limit počtu prvků formuláře
- jan-kratochvil
- Člen | 17
Ahoj, řeším problém, pokud formulář překročí počet prvků (addText) přes cca 1000, tak se přestane volat onSuccess[] a při submitu se pouze točí dokola render. Je zde nějaký limit? Nebo jsem úplně vedle? Mám Nette 3.1
Honza
Editoval jan-kratochvil (13. 5. 16:12)
- Marek Bartoš
- Nette Blogger | 1274
Dělá to php.ini nastavení max_input_vars
, s Nette to
nemá nic společného. Webserver přebytečná data prostě zahodí.
Editoval Marek Bartoš (13. 5. 16:14)
- jan-kratochvil
- Člen | 17
Marek Bartoš napsal(a):
Dělá to php.ini nastavení
max_input_vars
, s Nette to nemá nic společného. Webserver přebytečná data prostě zahodí.
Ježiš děkuju, to mě vůbec nenapadlo, nechal jsem na tom snad 4 hodiny času, grrrr.
v té dokumentaci se píše:
If there are more input variables than specified by this directive,
an E_WARNING is issued, and further input variables are truncated from the request.
já ale žádný warning nedostal, není to nějaká chyba?
- Marek Bartoš
- Nette Blogger | 1274
Tenhle warning vznikne hned při startu php, ještě před tím, než zapneš
Tracy. Nejspíš tedy vznikl, ale zalogoval se jinam než jsi čekal. Nejspíš
v umístění definovaném přes ini option error_log
Můžeš si však jednoduše dosáhnutí limitu zkontrolovat i sám, přes
if (count($_POST) === ini_get('max_input_vars')) {
// Likely hit the max_input_vars limit
trigger_error("Input variables exceeded the max_input_vars limit.", E_USER_WARNING);
}
Ideálně bys měl kód změnit tak, abys nastavení počtu proměnných nepotřeboval změnit, namísto toho by jich mělo chodit méně.