批改状态:合格
老师批语:加上直接的总结就更完美了哦!
今天学习了文件,目录以及文件上传的知识:
代码:
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>"method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FILE_SIZE" value="542488">
<fieldset>
<legend align="center">文件上传</legend>
<p><strong>选择文件</strong><input type="file" name="upload"></p>
</fieldset>
<p align="center"><button type="submit" name="submit">上传</button></p>
</form>
<?php
if($_SERVER['REQUEST_METHOD']='POST') {
if (isset($_FILES['upload'])) {
$allow = ['image/jpg', 'image/jpeg', 'image/png'];
if (in_array($_FILES['upload']['type'], $allow)) {
if (move_uploaded_file($_FILES['upload']['tmp_name'], "./upload/{$_FILES['upload']['name']}")) {
echo "<script>alert('文件上传成功')</script>";
}
} else {
echo '<script>alert(\'仅允许上传jpg和png格式的图片\')</script>';
}
}
if ($_FILES['upload']['error'] > 0) {
echo '<p>错误原因是:<strong>';
switch ($_FILES['upload']['error']) {
case 1:
echo '文件超过了php.ini配置中设置的大小';
break;
case 2:
echo '文件超过了表单中常量设置的大小';
break;
case 3:
echo '仅有部分文件被上传';
break;
case 4:
echo '没有文件被上传';
break;
case 6:
echo '没有可用的临时文件夹';
break;
case 7:
echo '磁盘已满,写入失败';
break;
case 8:
echo '上传意外中止';
break;
default:
echo '系统未知错误';
break;
}
echo '</strong></p>';
if (file_exists($_FILES['upload']['tmp_name']) && is_file($_FILES['upload']['tmp_name'])) {
unlink($_FILES['upload']['tmp_name']);
}
}
}else{
echo '1';
}
?>点击 "运行实例" 按钮查看在线实例
<?php
$dir=opendir('../6')or die('打开失败');
while(false!=($file=readdir($dir))){
//print $file.'<br>';
// print nl2br($file);
if ($file != "." && $file != "..") {
print $file."<br>";
}
}
closedir($dir);
echo '<hr>';点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号