/*
* 文件上传:
* 1、如何控制上传文件
* 2、对上传文件判断(格式、大小)
* 3、学习执行文件上传操作方法
* $_FILES 数组元素
* $_FILES[filename][name]:存储上传的文件名
* $_FILES[filename][size]:存储上传的文件大小,单位为字节
* $_FILES[filename][tmp_name]:存储文件在临时目录中使用的文件名
* $_FILES[filename][type]:存储上传文件的MIME类型,类型由"/"分隔
* $_FILES[filename][error]:存储与文件上传相关的错误代码
* 0:上传成功
* 1:上传文件的大小超出了PHP配置
* 2:表示上传文件大小超出了表单中MAX_FILE_SIZE选项所指定的值
* 3:表示文件只被上传了一部份
* 4:表示没有上载任何文件
* /
if(!empty($_FILES['up_picture']['name'])){ //判断上传内容是否为空
if($_FILES['up_picture']['error']>0){ //判断文件是否可以上传到服务器
echo "上传错误:";
switch ($_FILES['up_picture']['error']){
case 1:
echo "上传文件大小超出配置文件规定值";
break;
case 2:
echo "上传文件大小超出表单中约定的值";
break;
case 3:
echo "上传文件不全";
break;
case 4:
echo "没有上传文件";
break;
}
}else{
list($maintype,$subtype)=explode("/", $_FILES['up_picture']['type']);//获取上传文件类型
if($maintype!="image"||$subtype!="pjpeg"){ //判断上传文件格式是否正确
echo "上传文件格式不正确";
}else{
if(!is_dir("upfile")){ //判断指定目录是否存在
mkdir("upfile"); //创建目录
}
$path = "upfile/".time().strtolower(strstr($_FILES['up_picture']['name'], "."));//动态创建生成文件路径
if(is_uploaded_file($_FILES['up_picture']['tmp_name'])){//判断文件是否可以上传
if(move_uploaded_file($_FILES['up_picture']['tmp_name'], $path)){ //如果上传成功
echo "文件:".time().strtolower(strstr($_FILES['up_picture']['name'], "."))
." 上传成功,大小为:".$_FILES['up_picture']['size']."字节";
}else{
echo "上传失败";
}
}else{
echo "上传文件:".$_FILES['up_picture']['name']."不合法!";
}
}
}
}
?>
阅读(970) | 评论(0) | 转发(0) |