Překročení LimitRequestBody při nahrávání souboru

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

Když uploaduju soubor a překročím LimitRequestBody (doporučuju článek od Jakuba Vrány), tak PHP zareaguje tak, že předá prázdný $_POST i $_FILES.

To může znamenat ztrátu dat. Například, když napíšu e-mail a přidám k němu velmi velkou přílohu, tak přijdu o text zprávy!

Nicméně ve virtuálním souboru php://input zůstanou všechna data z formuláře. Http\RequestFactory by mohla v takovém případě zrekonstruovat $_POST i $_FILES (s názvem velkého souboru a příznakem UPLOAD_ERR_INI_SIZE). To by byla opravdu killer feature!

Dále by bylo fajn, kdyby UploadControl automaticky přidával validační pravidlo, které by detekovalo překročení upload_max_filesize (což se dá snadno detekovat, podle flagu UPLOAD_ERR_INI_SIZE) a při jeho zjištění vyhodil formulářovou chybu „The size of the uploaded file can be up to … bytes.“ – teď to funguje tak, že mi vyhodí chybu „Please complete mandatory field.“, což má velký WTF faktor.