首页 > 代码库 > 上传文件函数的思路
上传文件函数的思路
<form action="" method="post" enctype="multipart/form-data"> 请选择要上传的文件:<input type="file" name="myFile" value="" /> <input type="submit" value="http://www.mamicode.com/开始上传" /> </form> <?php header("content-type:text/html;charset=utf-8"); echo "<pre>"; print_r($_FILES); echo "</pre><hr/>"; $name=$_FILES[‘myFile‘][‘name‘]; $type=$_FILES[‘myFile‘][‘type‘]; $tmp_name=$_FILES[‘myFile‘][‘tmp_name‘]; $error=$_FILES[‘myFile‘][‘error‘]; $size=$_FILES[‘myFile‘][‘size‘]; if($error==UPLOAD_ERR_OK){ if(is_uploaded_file($tmp_name)){ @$ext=strtolower(end(explode(".", $name))); $extArray=array("jpeg","png","gif","jpg","txt"); if(in_array($ext, $extArray)&&substr($type, 0,5)==‘image‘){ //in_array函数是区分大小写的 $uniqueName=md5(uniqid(microtime(true),true)); $dir="images"; $destination=$dir."/".$uniqueName.".".$ext; if(move_uploaded_file($tmp_name, $destination)){ $mesErr="上传成功"; }else{ $mesErr="上传失败"; } }else{ $mesErr="不支持文件类型,请重新选择文件上传"; } }else{ $mesErr="非法上传方式"; } alertErr($mesErr); }else{ //echo $error; switch($error){ case 1: $mesErr="超过了配置文件设定的大小!"; break; case 2: $mesErr="超过了POST缓存的最大值!"; break; case 3: $mesErr="只有部分文件被上传!"; break; case 4: $mesErr="没有文件被上传!"; break; case 5: $mesErr="上传文件大小为0!"; break; case 6: case 7: case 8: $mesErr="未知错误!!!"; break; default: $mesErr="上传失败!"; break; } alertErr($mesErr); } //Java警告 function alertErr($mesErr){ echo "<script type=‘text/javascript‘>alert(‘{$mesErr}‘)</script>"; }
本文出自 “方向感” 博客,请务必保留此出处http://itech.blog.51cto.com/192113/1539018
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。