批改状态:合格
老师批语:
文件上传总结:
文件上传必须是post
文件允许的类型是multipart/form-data
在当前文件上处理的话action有3种方法:
1什么都不写:默认是当前脚本
2最死的方法:当前脚本
3最酷的方法: <?php echo htmlspecialchars($_SERVER['PHP_SELF'])?>
$_FILES['当前上传文件的控件名
input[name="[upload"]' $_FILES['upload']['name']文件的原始名称 $_FILES['upload']['type']文件类型 $_FILES['upload']['size']文件大小 $_FILES['upload']['tmp_name']服务器上的临时文件夹 $_FILES['upload']['error']错误信息
<!-- 文件上传必须是post
文件允许的类型是multipart/form-data
在当前文件上处理的话action有3种方法:
1什么都不写:默认是当前脚本
2最死的方法:当前脚本
3最酷的方法: -->
<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 align="center"><strong>选择文件</strong><input type="file" name="upload"></p>
</fieldset>
<p align="center"><button type="submit" name="submit">上传</button></p>
</form>
<!-- $_FILES他是一个二维数组
$_FILES['当前上传文件的控件名
input[name="[upload"]' $_FILES['upload']['name']文件的原始名称 $_FILES['upload']['type']文件类型 $_FILES['upload']['size']文件大小 $_FILES['upload']['tmp_name']服务器上的临时文件夹 $_FILES['upload']['error']错误信息 -->
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
//检测文件是否被上传
if (isset($_FILES['upload'])) {
//设置文件上传的类型
$arr =['image/jpg','image/jpeg','image/png'];
if (in_array($_FILES['upload']['type'],$arr)) {
//将用户上传文件指定在临时目录:
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 '文件超过了phpini中的大小';
// break;
// case 2:
// echo '文件超过了表单设置的大小';
// break;
// case 3:
// echo '文件上传不完整';
// break;
// case 4:
// echo '没有文件上传';
// break;
// case 6:
// echo '临时文件夹没有';
// break;
// case 6:
// echo '上传意外终止';
// break;
// default:
// echo '位置错误';
// break;
// }
// echo '</strong></p>';
}
}
?>
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script type="text/javascript">
$('#submit').click(function(){
var pic = new FormData();
pic.append("file",$("file").get(0).files[0]);
$.ajax({
url:'upload.php',
type:'post',
processData:false,
contenType:false,
data:pic,
success:function(res){
$('span').remove()
$('P').after('<span>').next().html(res).css('color','red')
// switch (res.status) {
// case 0:
// $('P').after('<span>').next().html(res.msg).css('color','blue')
// break;
// case 1:
// $('P').after('<span>').next().html(res.msg).css('color','blue')
// break;
// case 2:
// $('P').after('<span>').next().html(res.msg).css('color','blue')
// break;
// case 3:
// $('P').after('<span>').next().html(res.msg).css('color','blue')
// break;
}
})
return false
})
</script>}点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号