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

Jedná se o chybu, která téměř určitě není způsobena Nette, ale je tak zvláštní, že vůbec nevím, kde vůbec začít s jejím odhalováním. Za jakoukoliv radu nebo nápad budu vděčný.

Problém:
Při odeslání formuláře, ve kterém je odesláno mnoho dat (například textarea s více než 1000 znaky a podobně) se někdy do databáze zapíše jenom část dat. Ukládání do databáze je v transakci. Chyba je náhodná a občas se projevuje pouze, když uživatel zadává data ze vzdálené sítě. Při zadávání dat z localhostu nebo z místní sítě ke ztrátě dat nikdy nedojde.

Takže má otázka zní: kde začít s odhalováním této chyby? Případně co použít, abych ověřil, že data z formuláře byla v POST požadavku odeslána opravdu celá a v pořádku dorazila kompletní na server?

Majkl578
Moderator | 1364
+
0
-

kde začít s odhalováním této chyby?

  1. Kontrolou konfigurace. PHP má několik konfigurací ovlivňující velikost vstupu. Samotnou velikost ovlivňuje direktiva post_max_size, počet vstupních proměnných pak max_input_vars a jejich maximální zanoření max_input_nesting_level.
  2. Kontrolou co na server přijde – např. nejtriviálněji var_dump($_POST).