2014-09-10 117 views
2

我檢查工作,如果該文件是MP4格式的一旦用戶提交表單,這並沒有爲我工作:PHP文件上傳不支持MP4

if(!($_FILES["videoFile"]["type"] == "video/mp4")) 
{ 
    // error handling 
} 

文件類型適用於這樣的其他文件類型作爲PNG/JPG等,但不適用於MP4。

echo $_FILES["videoFile"]["type"] = [tmp_name] 
echo $_FILES["videoFile"]["name"] = movie_300.mp4 

當我打印出來的文件的數組我得到:

Array ([videoFile] => Array ([name] => movie_300.mp4 [type] => [tmp_name] => [error] => 1 [size] => 0)) 

爲什麼我的文件類型[不對tmp_name]上傳時mp4文件?

+1

你檢查$ _FILES [「的錄像檔案」] [「型」]的價值? – dan08 2014-09-10 19:26:38

+2

你可以把<?php print_r($ _ FILES); ?>提交。 – sugunan 2014-09-10 19:27:49

+0

請參閱:http://stackoverflow.com/a/6755263/258674 – 2014-09-10 19:32:42

回答

2

您已超過文件上傳大小的最大值,參見here

您可以增加此使用下面的指令在你的腳本的頂部:

ini_set('upload_max_filesize', '10M'); // set max size to 10M (or whatever) 
0

這是一個整潔的小功能。

http://subinsb.com/php-find-file-mime-type

,因爲我敢肯定,默劇可以很容易被欺騙,我會小心你的驗證。也許有更多安全經驗的人可以考慮這個問題。我至少會進行其他一些檢查。

乾杯!