HTML表单缺少输入(PHP)

时间:2013-06-05 08:32:03

标签: php html

在我的一个客户端服务器上,我创建了一个最多可包含800个输入字段的表单。但提交后,第200个之后的所有输入都丢失了。我已经检查了max_input_vars并将其设置为1000.而max_execution_time和max_input_time设置为60.我已经创建了一个测试文件,你可以在这里找到, url deleted 创建1000个输入字段提交打印POST数据。表格没问题,但是这个表格也会在提交后将输入#0显示为输入#199作为POST数据。

没有机会,

  • 错误与url编码作为输入是简单的整数
  • 命名错误,因为它是单个数组

php Info可在此处找到: url已删除

测试文件的代码(test.php):

<?php
        if($_SERVER['REQUEST_METHOD']=='POST') {
        var_dump($_POST);
    }     

?>

<form action="" method="post">
<?php
    for($i=0;$i<1000;$i++) {
        echo "<input name='in[]' type='text' value='$i' />";
    }
?>
<input type="submit" value="submit" />
</form>

谢谢!

2 个答案:

答案 0 :(得分:1)

更改php.ini中的以下设置:

suhosin.post.max_vars 200 200

suhosin.request.max_vars 200 200

Suhosin is an advanced protection system for PHP installations.

可以通过在应用程序中的某个位置执行此操作来更改这些:

ini_set('suhosin.request.max_vars', 1000)

ini_set('suhosin.post.max_vars', 1000)

答案 1 :(得分:-2)

检查php.ini文件中的post_max_size并尝试增加它

如果您无法访问php.ini,请尝试ini_set("post_max_size", "100M");默认为8MB