我有一個工作的上傳文件腳本,現在我希望做腳本通過限制文件擴展名的安全,我不知道該怎麼做限制在PHP上傳腳本擴展上傳
<?php
$extensions = array("docx","pdf","png");
if(isset($_FILES['files'])){
$errors= array();
foreach($_FILES['files']['tmp_name'] as $key => $tmp_name){
$file_name = $key.$_FILES['files']['name'][$key];
$file_size =$_FILES['files']['size'][$key];
$file_tmp =$_FILES['files']['tmp_name'][$key];
$file_type=$_FILES['files']['type'][$key];
$query="INSERT into upload_data (`USER_ID`,`FILE_NAME`,`FILE_SIZE`,`FILE_TYPE`) VALUES('$user_id','$file_name','$file_size','$file_type'); ";
$desired_dir="uploads";
if(empty($errors)==true){
if(is_dir($desired_dir)==false){
mkdir("$desired_dir", 0700); // Create directory if it does not exist
}
if(is_dir("$desired_dir/".$file_name)==false){
move_uploaded_file($file_tmp,"user_data/".$file_name);
}else{ //rename the file if another one exist
$new_dir="user_data/".$file_name.time();
rename($file_tmp,$new_dir) ;
}
mysql_query($query);
}else{
print_r($errors);
}
}
if(empty($error)){
echo "Successfully uploaded";
}
}
?>
這裏是形式提交方法我使用
<form action="" method="POST" enctype="multipart/form-data">
<input type="file" name="files[]" multiple="" class="btn btn-inverse btn-icon input-block-level" />
<input type="submit" class="save btn btn2" style="padding: 0px; margin: 10px; "/>
</form>
哇!已經過了17分鐘,我沒有看到任何不使用'mysql_ *'函數的警告,它們已被棄用。 – Jigar