关于提交多个表单,我遇到了一个小问题:
我试图提交更大数量的$_POST-variables
,然而,我的服务器端脚本结束(或只是崩溃)后,总共271表单变量,提交。
在本地主机上尝试,一切都很好,没有任何问题。在这里,总共提交了771个post变量。
到目前为止,我也做了一些研究,试图找出我可以改变什么样的变量,以配置更大的数据范围或类似的东西。
这是我的服务器配置:max_execution_time 30 30
max_input_nesting_level 64 64
max_input_time 60 60
max_input_vars 1000 1000
memory_limit 256M 256M
post_max_size 8M 8M
本地主机配置:
max_execution_time 30 30
max_file_uploads 20 20
max_input_nesting_level 64 64
max_input_time 60 60
max_input_vars 1000 1000
memory_limit 256M 256M
post_max_size 8M 8M
正如你所看到的,它是相同的配置…我也有suhosin -扩展安装在我的服务器上,默认配置。我不熟悉这个扩展,但使用默认值应该有这种影响(我猜:))
Server-PHP Version: 5.3.9
本地:5.3.17
这个问题和这个很相似。
我已经尝试解决这个问题好几个星期了,如果你有任何想法…那就太好了;)谢谢
更新:如果我使用这种方法(谢谢):
$pairs = explode("&", file_get_contents("php://input"));
$vars = array();
foreach ($pairs as $pair) {
$nv = explode("=", $pair);
$name = urldecode($nv[0]);
$value = urldecode($nv[1]);
$vars[$name] = $value;
}
print_r($vars);
我看到我之前显示的所有表单变量和内容。但是,通过使用
直接访问$_POST变量isset($_POST['LanguageContentForm']
并将其保存到变量中不起作用。:/
如果您检查phpinfo(),您可以看到suhosin.post的一个变量。每台机器上的Max_vars
你应该可以在。htaccess中这样修改它:
php_value suhosin.post.max_vars 1000
php_value suhosin.request.max_vars 1000
更新也许这个也是:
suhosin.request.max_varname_length
Type: Integer
Default: 64
定义可以通过COOKIE、URL或POST请求注册的变量的最大名称长度(不包括可能的数组索引)。