数据比较大,有2.3MB,实际应用中可能更大
ini_set('memory_limit', '24M');
ini_set('post_max_size', '240M');
这些我都设置了,保存到文件中是没问题,但是由于需要用户输入到表单,所以没法直接保存在文件中,上传文件的话,用户体验比较差,我希望通过POST传过去处理。通过上面两句设置,字符串的长度可以达到20多M大小,所以不是这儿的问题发送数据页面 demo.php:
<?php
echo  "<input type='hidden' name='tex' value='";
for($i=0; $i<100000; $i++) {
echo "这是大数据!!!";
//$str_info .= "这是大数据!!!";
//$len += strlen("这是大数据!!!");
}
echo "'/>";
?>
接收数据页面 save.php:
$info = $_POST['tex'];点击提交过后,save.php页面没有显示任何东西,这里只给了部分的代码,不是代码的问题
我把循环的那个100000改成10000就可以正常POST并显示。
希望大家给个办法,小弟万分感谢 ╯﹏╰

解决方案 »

  1.   

    在Linux下可以了,修改了php.ini文件
    现在可以POST 11.44mb 大小的数据,已经够我用。
    更大的数据可能因为服务器太弱了,承受不起
    我觉得可能是windows下php的问题,我用的三合一快捷配置,感觉可能功能有些阉割把
      

  2.   

    iis 或 apache
    看下是不是有限制
      

  3.   

    1、
    ini_set('memory_limit', '24M');
    ini_set('post_max_size', '240M');
    奇怪的设置,居然上是在小的可用空间里使用大内存。即便现在不出错,以后也会出错2、
    100000 不行,10000 行
    不是内存不足,就是超时3、承载大内容的表单控件是什么?
    什么控件能加载那么大的数据?
      

  4.   


    第一个的确设置反了。memory_limit至少要大于等于post_max_size的值。
      

  5.   


    //别超时
    Set_time_limit(0);
      

  6.   

    我都设置成240M,内存足够,也没有超时,但是可能是我windows的php版本比较低,提交过去后页面卡在那儿。我弄到虚拟机(Linux)里面,在windows下访问就可以正常提交大数据,也就是5秒内的样子。
    表单就是用的普通的textarea标签,我换了input的text也是可以的。不过还是谢谢你给我提出了这么多问题