netocazuza
(usa Ubuntu)
Enviado em 23/11/2019 - 22:00h
Tenho um sistema em php que grava os dados da seguinte forma: Existe um formulário em html, que captura os dados, e um arquivo de inserção em php que recebe os dados do formulário, e grava no banco. Tudo isso está funcional, e vai sendo ampliado, de acordo com a necessidade, então vou tentar ilustrar o código aqui:
$numero1 = $_POST['numero1'];
.
.
.
$numero100 = $POST['numero100'];
Esses dados vem do formulário, e até esse número 100, está funcional. Após receber esses números, é preparado um SQL para inserção no banco, que fica mais ou menos assim:
$sql = "insert into tabela(numero1, ...,numero100) values ('$numero1', ..., 'numero100')";
$con->exec($sql);
Tudo isso está funcionando, e deu tudo certo, até aproximadamente o registro 100 (não sei o número exato) pois é uma necessidade do sistema que ele seja assim, e as variáveis sejam criadas, quando a ocasião se apresenta.
Ocorre, que de uns dias pra cá, não consigo mais criar nenhuma variável, e o sistema travou. Depois de muitos testes, descobri que essa linha de inserção no $sql, fica como uma linha inteira e única, e é exatamente essa a limitação, que é 3.000 caracteres, espaços ou colunas, aparentemente. O travamento decorre disso. Tudo que for feito à partir da linha 3.000, é simplesmente ignorado, e gera um erro no sistema.
Normalmente escrevo o código diretamente do terminal linux, usando o comando vim, salvo e já testo no navegador, e a minha dúvida é se essa limitação é do comando vim, do mysql, ou do PHP, e como fazer para contornar isso?
Uso Linux Ubuntu 16.04 LTS, PHP 7 e mysql com phpmyadmin. Uma outra particularidade, é que para ser mais produtivo, escrevo o código diretamente no servidor em produção, via terminal com o comando vim.
Gostaria apenas de uma forma de quebrar essa linha, de modo que essa inserção continue sendo feita da mesma maneira.