如果数据太大,则无法定义$ _POST ['数据']

时间:2015-11-17 19:01:09

标签: javascript php html5 forms

我想在一个名为" data"的textarea中发送一个~10MB的json数据。如果数据是1-2KB,那么它完美地工作。但是对于一个大的json,$_POST['data']由于某种原因是空的。

我无法上传json,因为它是客户端生成的,它不是文件。

我已经尝试过此代码,但仍然无法正常工作:

form.setAttribute('enctype', 'multipart/form-data');

修改

使用此设置,它仍无法正常工作:

memory_limit = 256M
upload_max_filesize = 64M
post_max_size = 64M

EDIT2

如果我从php 5.4切换到5.6,那么我会得到一个500错误页面,屏幕上没有详细说明。

3 个答案:

答案 0 :(得分:4)

您需要在post_max_size文件中将php.ini更改为足够的(20MB)。

默认情况下,PHP允许最大文件上传量为2MB。

两个PHP配置选项控制最大上传大小:upload_max_filesizepost_max_size。如果需要,两者都可以设置为20M,文件大小为20兆字节或更高。

答案 1 :(得分:3)

尝试在

中更改post_max_size
 php.ini

 post_max_size=20M

答案 2 :(得分:2)

除了其他人已经提到的,如果你在Apache中运行,你也可以尝试在.htaccess中设置它

php_value upload_max_filesize 20M
php_value post_max_size 25M

其他方法,如果您以CGI / FastCGI身份运行,可以尝试创建.user.ini并将其放在upload.php脚本所在的位置

upload_max_filesize = 40M
post_max_size = 40M