Correcting teacher:PHPz
Correction status:qualified
Teacher's comments:
<?php
use const ParagonIE\ConstantTime\true;
// 遍历,单文件多文件上传
$imgs = [];
foreach($_FILES as $file){
if($file['error'] == 0){
// error等于0表示上传成功,这边判断一下,有上传成功在接着走
// 判断一下文件类型是否争取,错误优先处理
if(strstr($file['type'], '/', true) !=='image'){
$tips = '文件类型错误';
continue;
}else{
// 创建目标文件名,MD5加密
$targetName = 'uploads/' . md5($file['name']) . strstr($file['name'],'.');
// 将文件从临时目录移动都目标目录,重命名
if(!move_uploaded_file($file['tmp_name'],$targetName)){
$tips = '移动失败';
}else{
// 将上传的文件保存到一个数组中,进行预览
$imgs[]= $targetName;
}
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- action为空,表示提交到当前表单,必须使用post方法, -->
<form action="" method="post" enctype="multipart/form-data">
<fieldset>
<legend>文件上传</legend>
<input type="file" name="pic">
<input type="file" name="pic1">
<input type="file" name="pic2">
<button>上传</button>
</fieldset>
</form>
<!-- 判断是否错误 - -->
<?php if(isset($tips)) :?>
<!-- 显示错误 -->
<?php $tips ?>
<!-- 如果没有错误,判断是否存在上传的图片 -->
<?php elseif(count($imgs) > 0): ?>
<!-- 预览当前图片 -->
<?php foreach($imgs as $img):?>
<img src="<?php $img ?>" alt="" width="300">
<?php endforeach ?>
<?php endif ?>
</body>
</html>