前端页面代码:
<form action="./upload.php" method="post"
enctype="multipart/form-data">
请选择上传文件:<br>
<input type="file" name="upload[]"><br>
<input type="file" name="upload[]"><br>
<input type="file" name="upload[]"><br>
<input type="submit" value="上传">
<input type="hidden" name='token' value='token'>
</form>
![图片.png](https://upload-images.jianshu.io/upload_images/12275941-c78f0ebd2dfd0bf9.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图片.png
upload.php代码如下:
//判断表单是否合法提交
if(isset($_POST['token'])&&$_POST['token']=='token'){
$arr=$_FILES['upload'];
$i=0;
while(!($arr['name'][$i]=="")){
//1、判断error值是否不为零
if(!$arr['error'][$i]==0){
echo "上传出错!";
header('refresh:3;url=./test2.php');
die();
}
//2、判断判断文件大小是否超过2m
if($arr['size'][$i]>2*1024*1024){
echo "上传文件不得超过2M!";
header('refresh:3;url=./test2.php');
die();
}
//获取文件拓展名
$ext=pathinfo($arr['name'][$i],PATHINFO_EXTENSION);
//3、判断上传文件的拓展名是否正确
//若要上传其它类型文件,将其类型加入数组即可
$arr_imgext=['jpg','jpeg','png','gif'];
if(!in_array($ext,$arr_imgext)){
echo "请上传正确格式的文件!";
header('refresh:3;url=./test2.php');
die();
}
//4、判断文件MIME类型
//注意:经测试,如果更改文件拓展名
//则$_FILES中mime类型的判断可能会存在不严谨的情况
// $mime=$arr['type'][$i];
// $arr_mime=['image/jpeg','image/png','image/gif'];
// if(!in_array($mime,$arr_mime)){
// echo "请上传正确类型的文件!";
// header('refresh:3;url=./test2.php');
// die();
// }
//构建临时文件路径和目标文件路径
$temp_file=$arr['tmp_name'][$i];
$uniqid=uniqid('');
$dst_file="./upload/{$uniqid}.$ext";
move_uploaded_file($temp_file,$dst_file);
$i++;
}
echo "上传成功!";
header('refresh:3;url=./test2.php');
}
else{
echo "非法操作!";
header('refresh:3;url=./test2.php');
die();
}