Prezados,
Recentemente, enfrentamos uma questão de forma que não foi enviada com todos os campos do formulário. Deixe-me descrever a questão em detalhes.
Nosso form, ao criar um novo contato ou atualizar um antigo, as tags selecionadas não estavam sendo salvas. Isso estava funcionando antes, mas de repente essa questão surgiu. Após uma investigação aprofundada, descobrimos que nem todos os campos do formulário foram publicados ou, em outras palavras, a variável PHP $_POST não listou todos os campos. Em nossa máquina Windows, conseguimos todos os campos, mas na caixa Linux o problema existia. Primeiro pensamos que a questão poderia ter causado devido à diretiva PHP "post_max_size", embora tenha sido configurada para 24M. Nós tentamos atualizá-lo para 128M. Mas a questão ainda estava lá.
Em seguida, buscamos na internet e obtivemos uma pista de http://akrabat.com/php/missing-fields-in-_post/ . Nosso servidor estava usando o PHP 5.3.22. Então, buscamos a diretiva "max_input_vars", que era nova desde 5.3.9, foi definida como 1000 por padrão. Aumentamos o número para 2000 e a questão foi resolvida.
Devido ao número de grupos no formulário, o número do campo aumentou para mais de 1000. Então, o PHP estava truncando os dados do POST e, no máximo, 1000 campos foram retornados. É por isso que os campos de Tags não foram listados na variável $ _POST.
(traduzido e adaptado)
Texto original e link do post da resolução do problema:
http://sajjadhossain.com/2013/07/11/form-not-submitting-with-all-form-fields/
Comentários