2012-01-12 19 views
0

は、制限のサーバーの詳細である:ここでPHPを使って大きなファイルをアップロードしますか?ここで私は(190メガバイトまで)大きなファイルをアップロードする必要が

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メガバイトのファイルをアップロードするとき、彼らはアップロード成功したが、私は大きなファイルをアップロードしようとすると、(20または30または40または50)私はこの応答を取得:

Column count doesn't match value count at row 

私が間違っているのは何を?

+0

のためにいくつかの大きなファイルアップローダーを使用することをお勧め? –

+0

私の質問を参照してください –

+0

列のカウントはこの行の値のカウントと一致しませんこのエラーメッセージ –

答えて

1

php.iniだけでなく、サーバーもリクエストサイズを制限できます。 Apacheのデフォルトでは、ファイルサイズを制限するように設定されていませんが、一度確認する必要があります。 LimitRequestBodyディレクティブはリクエストサイズを制限するために使用されます。すべての設定ファイル(Apacheを使用していると仮定しています)のディレクティブを確認し、ディレクトリの値を変更します。 使用例:

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

は、私は、FTPの詳細はFTP –

+0

を接続します、あなたが使っている私たちのサーバーについてです。例えばapache/weblogicなどの設定をチェックする必要があります。 –

+0

に制限確認することができますこんにちは、私はLinuxサーバ –

関連する問題