2012-01-12 64 views
0

我需要上传大文件(高达190MB) 这里是服务器的详细信息为限:使用php上传大文件?

memory_limit = 50M 
post_max_size = 192M 
file_uploads = On 
upload_max_filesize = 192M 
max_execution_time = 1800 sec 
max_input_time = 1800 sec 

这里是我的代码:

$query="update tbl_Cards set CardName='$cardname',Description='$Description'"; 
    if($cardvideo) 
    { 
     if($_FILES["cardvideo"]["type"] == "video/quicktime"||$_FILES["cardvideo"]["type"] == "video/mov"||$_FILES["cardvideo"]["type"] == "video/mp4"||$_FILES["cardvideo"]["type"] == "video/mpv"||$_FILES["cardvideo"]["type"] == "video/3gp") 
     { 
     if($_FILES["cardvideo"]["size"]<=10485760) 
     { 
      $cardvideo=$date."card.mp4"; 
      $tmppath3="services/video/".$cardvideo; 
      if(move_uploaded_file($_FILES['cardvideo']['tmp_name'],$tmppath3)) 
      { 
      $thumb=$date.".jpg"; 
      $thumbDirectory="services/VideoCapturePic/"; 
      exec("convert \"{$tmppath3}[0]\" -colorspace RGB -geometry 200 $thumbDirectory$thumb"); 
      $query.=",Video='$cardvideo',CapturePic='$thumb'"; 
     } 
     $query.="where CardId='$card'"; 

     $result=mysql_query($query); 
     if($result) 
     { 
     } else 
     { 
     echo mysql_error(); 
     } 

但是当我上传10个MB的文件,他们上传但是当我尝试上传大文件时(20或30或40或50),我得到以下回应:

Column count doesn't match value count at row 

我在做什么错?

+0

你做了什么错误一些大文件上传? – 2012-01-12 04:59:17

+0

请参阅我的问题 – 2012-01-12 05:09:47

+0

列计数与行数不匹配,这是我的错误消息 – 2012-01-12 05:10:34

回答

1

它不只是php.ini,但服务器也可以限制你的请求大小。虽然在默认情况下在Apache中没有设置限制文件大小,但我认为你应该检查一次。 LimitRequestBody指令用于限制请求大小。检查所有配置文件中的指令(我假设您使用的是Apache)并更改您的目录的值。 示例用法:

<Directory "/var/www/vhost/mydir/uploads"> 
    LimitRequestBody 204444344 
</Directory> 
+0

我使用的FTP服务器连接 – 2012-01-12 05:40:36

+0

我如何检查ftp的详细限制在ftp – 2012-01-12 05:41:09

+0

嗨,我使用的是Linux服务器 – 2012-01-12 06:19:20