Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP/JSON:$\u接收到的POST数组不完整_Php_Jquery_Arrays_Json_Post - Fatal编程技术网

PHP/JSON:$\u接收到的POST数组不完整

PHP/JSON:$\u接收到的POST数组不完整,php,jquery,arrays,json,post,Php,Jquery,Arrays,Json,Post,使用$.post(JQuery)作为JSON数组发布大约100行数据。 但由于某些原因,并非所有行都被接收 数据大致如下(内容基本上是数字和小字符串): 我发送数据的方式是: $.post(url+"callback=?", { data : rows }, function(){}, "json"); 如果我回显本地版本中收到的行数(count($\u POST)),它会显示“100”,但在生产服务器上,它会显示“25”(每次都是相同的数量) 检查firebug中的请求详细信息,它正确地显示

使用$.post(JQuery)作为JSON数组发布大约100行数据。 但由于某些原因,并非所有行都被接收

数据大致如下(内容基本上是数字和小字符串):

我发送数据的方式是:

$.post(url+"callback=?", { data : rows }, function(){}, "json");
如果我回显本地版本中收到的行数(count($\u POST)),它会显示“100”,但在生产服务器上,它会显示“25”(每次都是相同的数量)

检查firebug中的请求详细信息,它正确地显示所有100个请求都已发送

我认为它可能是PHP的“post_max_size”值,但我将它设置为“100M”,我认为这已经足够了

我很确定它必须与服务器设置,但我的想法。。。 提前谢谢

更新:

  • 生产服务器有8GB内存,占用了大约一半的内存 它(不是内存问题)
  • 没有超时(所有过程大约在3秒钟内完成)

查询数据有一个最大大小-请参阅。
问题可能是两个问题之一。要么接收部分数据,要么PHP在一定数量后删除数据。有关PHP中的此设置,请参阅。

您的生产服务器正在使用吗?Suhosin经常是限制GET和POST请求大小的罪魁祸首。它们对POST和GET大小有单独的限制(事实上,我记得其中一个会影响另一个,因此两者都必须增加)

看一看你的phpinfo(),看看那里有没有关于苏霍辛的东西

可能影响您的Suhosin值:

  • suhosin.get.max_vars
  • suhosin.post.max_vars
  • suhosin.request.max_vars
(+价值和var长度的等价物)

此外,如果您正在上载文件,那么这也受到suhosin的限制:

  • suhosin.upload.max_上传(默认值为25)

已经有了一个公认的答案,但对于那些不使用suhosin的人来说,问题可能是“max\u input\u vars”php设置太低。默认情况下,我的设置为1000,这是不够的。

JSON和其他数据一样有一个限制:请参见此处:[在此处输入链接说明][1][1]:看到了吗?谢谢,但正如我前面所说,“post_max_size”设置为100MB。我认为它甚至没有使用1MB。最大查询数据适用于$\u GET no for$\u POST。@lepe:查看@Bergi POST链接,您可能有
mod\u security
或类似的阻止完整请求的功能。您是对的!我忘了。。。我通常会移除苏霍辛,因为它以前也会导致其他问题。我只是忘了在这个新服务器上做。谢谢!你救了我一天!
$.post(url+"callback=?", { data : rows }, function(){}, "json");