<body> <form action="doaction.php" method="post" enctype="multipart/form-data"> <input type="file" name="myfile"> <input type="submit" value="上传"> </form> </body>
$filename=$_FILES['myfile']['name']; $type=$_FILES['myfile']['type']; $tmp_name=$_FILES['myfile']['tmp_name']; $size=$_FILES['myfile']['size']; $error=$_FILES['myfile']['error'];
move_uploaded_file($tmp_name,"wenjian/".$filename);
file_uploads = on,支持HTTP上传 upload_tmp_dir= ,临时文件保存的目录 upload_max_filesize=2M,允许上传文件的最大值 max_file_uploads=20,允许一次上传的最大文件数 post_max_size=8M,post方式发送数据的最大值
if($error==UPLOAD_ERR_OK)
{
if(move_uploaded_file($tmp_name,"wenjian/".$filename))
{
echo "文件".$filename."上传成功";
}else
{
echo "文件".$filename."上传失败";
}
}
else
{
//匹配错误信息
switch($error)
{
case 1:
echo "上传文件超过了PHP配置文件中upload_max_filesize选项的值";
break;
case 2:
echo "超过了表单MAX_FILE_SIZE的限制大小";
break;
case 3:
echo "文件部分被上传";
break;
case 4:
echo "没有选择上传文件";
break;
case 6:
echo "没有找到临时目录";
break;
case 7:
case 8:
echo "系统错误";
break;
}
}
?>
<input type="hidden" name="MAX_FILE_SIZE" value="字节数">
<input type="file" name="myfile" accept="文件的MIME类型">
<?php
$fileinfo=$_FILES["myfile"];
$maxsize=2097152; //写最大的字节数,自己算
$allowext=array('jpeg','jpg','pnd','gif','wbmp'); //定义一下允许的上传文件类型
//1.判断错误号
if($fileinfo['error']==0)
{
//1.判断上传文件大小
if($fileinfo['size']>$maxsize)
{
exit('上传文件过大');
}
//2.判断上传文件类型是不是在规定类型中
$ext=strtolower(end(explode(',',$fileinfo['name'])));//截取上传文件扩展名
if(!in_array($ext,$allowext)) // 判断上传文件的扩展名是不是在定义类型中
{
exit('非法文件类型');
}
//3.判断文件是否是通过HTTP POST方式上传上来的
if(!is_uploaded_file($fileinfo['tmp_name']))
{
exit('文件不是通过HTTP POST方式上传上来的');
}
//4.检测是否为真实的图片类型,而不是认为改动的
$flag=true;
if($flag)
{
if(!getimagesize($fileinfo['tmp_name']))
{
echo "不是真实的图片类型";
}
}
$path='uploads'; //服务器上存储文件的文件名
//5.判断服务器上存储的文件夹在不在
if(!file_exists($path))
{
mkdir($path,0777,true);//不存在就创建一个目录
chmod($path,0777);//加一个权限
}
//6.确保文件名唯一,防止重名产生覆盖
$uniname=md5(uniqid(microtime(true),true)).'.'.$ext; //通过MD5加密等措施给文件名取名
$destination=$path.'/'.$uniname;
if(move_uploaded_file($fileinfo['tmp_name'],$destination)) //上传文件
{
echo "文件上传成功";
}else
{
echo "文件上传失败";
}
}else
{
//匹配错误信息
switch($error)
{
case 1:
echo "上传文件超过了PHP配置文件中upload_max_filesize选项的值";
break;
case 2:
echo "超过了表单MAX_FILE_SIZE的限制大小";
break;
case 3:
echo "文件部分被上传";
break;
case 4:
echo "没有选择上传文件";
break;
case 6:
echo "没有找到临时目录";
break;
case 7:
case 8:
echo "系统错误";
break;
}
}
?>
<body> <form action="doaction.php" method="post" enctype="multipart/form-data"> //通过表单隐藏域限制上传文件的最大值 <input type="hidden" name="MAX_FILE_SIZE" value="字节数"> //通过accept属性限制上传文件的类型 <input type="file" name="myfile" accept="文件的MIME类型"> </form> </body>
<?php //$_FILES:文件上传变量 print_r($_FILES); //$_FILES:保存着上传文件的信息 /*1.name:上传文件的名称 2.type:上传文件的MIME类型 3.tmp_name:上传到服务器上的临时文件名 4.size:上传文件的大小 5.error:上传文件的错误号*/ $filename=$_FILES['myfile']['name']; $type=$_FILES['myfile']['type']; $tmp_name=$_FILES['myfile']['tmp_name']; $size=$_FILES['myfile']['size']; $error=$_FILES['myfile']['error'];
//服务器端限制
<?php
$fileinfo=$_FILES["myfile"];
$maxsize=2097152; //写最大的字节数,自己算
$allowext=array('jpeg','jpg','pnd','gif','wbmp'); //定义一下允许的上传文件类型
//1.判断错误号
if($fileinfo['error']==0)
{
//1.判断上传文件大小
if($fileinfo['size']>$maxsize)
{
exit('上传文件过大');
}
//2.判断上传文件类型是不是在规定类型中
$ext=strtolower(end(explode(',',$fileinfo['name'])));//截取上传文件扩展名
if(!in_array($ext,$allowext)) // 判断上传文件的扩展名是不是在定义类型中
{
exit('非法文件类型');
}
//3.判断文件是否是通过HTTP POST方式上传上来的
if(!is_uploaded_file($fileinfo['tmp_name']))
{
exit('文件不是通过HTTP POST方式上传上来的');
}
//4.检测是否为真实的图片类型,而不是认为改动的
$flag=true;
if($flag)
{
if(!getimagesize($fileinfo['tmp_name']))
{
echo "不是真实的图片类型";
}
}
$path='uploads'; //服务器上存储文件的文件名
//5.判断服务器上存储的文件夹在不在
if(!file_exists($path))
{
mkdir($path,0777,true);//不存在就创建一个目录
chmod($path,0777);//加一个权限
}
//6.确保文件名唯一,防止重名产生覆盖
$uniname=md5(uniqid(microtime(true),true)).'.'.$ext; //通过MD5加密等措施给文件名取名
$destination=$path.'/'.$uniname;
$destination=inocv("UTF-8","gb2312",$destination); //如果上传的文件名中有汉字,需要转码一下,用inocv函数,把utf-8转为gb2312.
if(move_uploaded_file($fileinfo['tmp_name'],$destination)) //上传文件
{
echo "文件上传成功";
}else
{
echo "文件上传失败";
}
}else
{
switch($error)
{
case 1:
echo "上传文件超过了PHP配置文件中upload_max_filesize选项的值";
break;
case 2:
echo "超过了表单MAX_FILE_SIZE的限制大小";
break;
case 3:
echo "文件部分被上传";
break;
case 4:
echo "没有选择上传文件";
break;
case 6:
echo "没有找到临时目录";
break;
case 7:
case 8:
echo "系统错误";
break;
}
}
?>
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有