PHP文件上传默认不能超过2MB,请问PHP是什么时候检测文件大小的呢?假如用户上传2G的文件,PHP是将它传到服务器上再比较是否超出2MB吗?那样岂不是很危险很费服务器空间和流量?我在其它可以上传头像的网站试了下,传一个2G的文件等了好久也没传完(-_-!我不是想搞破坏的...),难道真的将2G的数据全都传上去了?

解决方案 »

  1.   

    可以这么说吧。因为PHP无法再客户端去运行。
    不过我们可以使用JS在客户端先验证文件大小是否超过限制,然后再让用户上传
      

  2.   

    在php.ini里面设置
    一般不要这样,可以使用swfupload上传
    queryphp ORM数据库类
    --------------------------------------------------------
    教程地址
    http://topic.csdn.net/u/20100228/22/3bea834b-efc0-4aa0-af4a-a4923af8b60c.html
    http://topic.csdn.net/u/20100226/12/43bf3dc5-795f-4fa5-861a-2f7bf8fd0cd6.html
    下载地址
    http://code.google.com/p/queryphp/downloads/list 
      

  3.   

    /etc/httpd/conf.d/目录下有个php.conf文件 
      

  4.   

    再问一下,啥时我的程序传完文件后$_FILES['filedata']是empty呢?是不是文件过大呢?
      

  5.   

    我上传一个21MB文件是$_FILES['filedata']为空,上传其它文件都非空的(其中有大于2MB的)。。
      

  6.   

    <script type="text/javascript">   
    function getFileSize(filePath)   
    {   
       var image=new Image();   
       image.dynsrc=filePath;   
       alert(image.fileSize);   
    }   
    </script>   
    <body>   
    <INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value)">   
    </body>  
      

  7.   

    phpinfo看下  上传的大小到底是多少