2012-03-14 12 views
0

過去1週間私はビデオでファイルをアップロードしようとしていましたが、イメージでやりましたが、うまくいきましたがビデオはアップロードされませんでした。私の友人は、私の.htaccessファイルでMIMEタイプを宣言し、それを試みましたが、それは仕事をしませんでした、構文が間違っていますか?私はこれについて間違ったやり方をしていますか?ここでPHPビデオをアップロードするhtacess MIME TYPE

私.htacess構文

AddType video/avi .avi 
AddType video/quicktime .mov 
AddType video/mpeg .mpeg .mpg 
AddType video/mp4 .mp4 

と、ファイルのアップロードのためのPHP ....高度で

move_uploaded_file($_FILES["video"]["tmp_name"], 
"../upload/" . $id . $title . date("Ymd") . $_FILES["video"]["name"]); 
$class->insertvideo($video); 

のおかげです。

J

+1

ファイルをアップロードするときに間違っているのは何ですか?どのようなエラーが出ますか? –

+0

何も起こらず、私のファイルはサーバにアップロードされ、ビデオは全く挿入されません – user1269625

+1

これは最初に基本的なデバッグを必要とします - '$ _FILES'には何が含まれていますか? 'print_r($ _ FILES);'を実行できますか? –

答えて

1

まず第一に、あなたは、特定のファイルタイプではなく、直接、直接出力されているのサーバで実行する場合を除き、AddTypeのを使用する必要はありません。

秒。あなたはそれにアクセスする前に "ビデオ"キーが$ _FILESにあることを確認する必要があります。

正しいディレクトリを探していますか?ファイルをアップロードした場所の親ディレクトリを確認してください。

ファイルが実際にアップロードされていることを確認するには、次のコードを試してください。

if(array_key_exists('video',$_FILES) 
{ 
    if($_FILES['video']['error']==UPLOAD_ERROR_OK) 
    { 
     move_uploaded_file($_FILES['video']['tmp_name'],'../upload/'.basename($_FILES['video']['name']); 
     echo 'success'; 
    } 
    else 
    { 
     throw new Exception('error detected'); 
    } 
} 
else 
{ 
    throw new Exception('video not in $_FILES array key.'); 
} 

また、アップロードフォームに正しい暗号化タイプが含まれていることを確認してください。

<form method="post" enctype="multipart/form-data"> 
    <input type="file" name="video" /> 
    <input type="submit" value="submit" /> 
</form> 
1

phpinfo()を実行して、upload_max_filesizeを取得します。通常はデフォルトで2MBに設定されていますが、これはおそらくあなたの動画にとっては小さすぎます。また、実行時間は、ファイルをアップロードするのに十分長く設定する必要があります。

これはphp.iniで設定する必要があります。

関連する問題