为了账号安全,请及时绑定邮箱和手机立即绑定

能否给个上传图片的源码<谢谢>

能否给个上传图片的源码<谢谢>

PHP
CD__10 2016-03-09 11:48:31
查看完整描述

2 回答

?
红颜未知己

TA贡献16条经验 获得超2个赞

ok

<html>
	<head></head>
	<body>
		<form action="" method="post" enctype="multipart/form-data">
			<input type="file" name="myfile">上传文件<br />
			<input type="submit" value="提交">
		</form>
		
	</body>
</html>
<?php 
//上传文件思路
//通过$_FILES['name值']来接收文件参数
//取出文件临时文件名  tmp_name
//取出文件后缀  pathinfo(文件名,PATHINFO_EXTENSION);
//创建文件保存的目录
//   1 检查目录是否存在  file_exists(目录名)
//   2如果没有则创建  mkdir(目录名) chmod()改变文件模式
//组合要保存的文件名(包括路径)  
//	 1采用MD5加密当前时间戳time().'/'.文件后缀名;
//	 2直接用文件名保存
//移动文件到指定目录下  move_uploaded_file(移动的文件名,要保存的名字)
//
header('content-type:text/html;charset=utf-8');
$fileInfo=$_FILES['myfile'];
$maxSize=2097152;//允许的最大值
$allowExt=array('jpeg','jpg','png','gif','wbmp');
$flag=true;//检测是否为真实图片类型
//1.判断错误号
if($fileInfo['error']==0){
	//判断上传文件的大小
	if($fileInfo['size']>$maxSize){
		exit('上传文件过大');
	}
	//$ext=strtolower(end(explode('.',$fileInfo['name'])));
	$ext=pathinfo($fileInfo['name'],PATHINFO_EXTENSION);
	if(!in_array($ext,$allowExt)){
		exit('非法文件类型');
	}
	//判断文件是否是通过HTTP POST方式上传来的
	if(!is_uploaded_file($fileInfo['tmp_name'])){
		exit('文件不是通过HTTP POST方式上传来的');
	}
	//检测是否为真实的图片类型
	if($flag){
		if(!getimagesize($fileInfo['tmp_name'])){
			exit('不是真正图片类型');
		}
	}
	$path='uploads';
	if(!file_exists($path)){
		mkdir($path,0777,true);
		chmod($path,0777);
	}
	//确保文件名唯一,防止重名产生覆盖
	$uniName=md5(uniqid(microtime(true),true)).'.'.$ext;
	//echo $uniName;exit;
	$destination=$path.'/'.$uniName;
	if(@move_uploaded_file($fileInfo['tmp_name'],$destination)){
		echo '文件上传成功';
	}else{
		echo '文件上传失败';
	}
}else{
	//匹配错误信息
	switch($fileInfo['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;
	}
}


查看完整回答
反对 回复 2016-03-20
?
as135614

TA贡献3条经验 获得超0个赞

没看明白什么意思。

查看完整回答
反对 回复 2016-03-09
  • 2 回答
  • 1 关注
  • 1474 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信