2014-04-01 70 views
0

我有處理上傳的多個圖像的代碼。我也想上傳和處理視頻。我如何檢查上傳的文件是圖像還是視頻?請注意,我想處理多個視頻文件。如何使用php檢查上傳的文件是圖片還是視頻?

<?php 
include('selectdb2.php'); 

if($_SERVER['REQUEST_METHOD'] == "POST") 
    if(isset($_FILES['file'])) 
    { 
     $count = 0; 
     $errors= array(); 

     foreach($_FILES['file']['tmp_name'] as $key => $tmp_name) 
     { 
      $file_name = $key.$_FILES['file']['name'][$key]; 
      $file_size =$_FILES['file']['size'][$key]; 
      $file_tmp =$_FILES['file']['tmp_name'][$key]; 
      $file_type=$_FILES['file']['type'][$key]; 

      $enc_id= $_POST['form_id'].$_POST['name3']; 
      $md5folder = md5($enc_id); 
      $upload_path ="uploads/".$md5folder; 

      if(!is_dir($upload_path)) 
      { 
       mkdir($upload_path, 0777, true); 
      } 

      if(empty($errors)==true) 
      { 
       move_uploaded_file($file_tmp,$upload_path.'/'.$file_name); 
      } 

     } 
..... 
..... 
?> 

回答

0

您必須簽出文件名的擴展名,因爲您不能相信上傳文件的內容類型。它可以欺騙客戶。所以你已經創建了數組列表 - 也被稱爲白名單 - 用於擴展圖像和視頻列表。

例如:

$allowed = array('gif','png' ,'jpg'); 
$filename = $_FILES['video_file']['name']; 
$ext = pathinfo($filename, PATHINFO_EXTENSION); 
if(!in_array($ext,$allowed)) { 
    echo 'error'; 
} 
+0

呀sure..Thanks..I'll可以加入這個code..But我怎麼能的手,如果上傳的文件是一個視頻和上面的代碼執行代碼(問題)如果它是一個圖像..我真的是新的PHP但做先進的事情:頁 – user3370495

相關問題