zoukankan      html  css  js  c++  java
  • PHP实现文件上传

    这是PHP实现文件上传的例子

    <html>
    
    <head>
    <meta content="text/html"charset="utf-8"></meta>
    </head>
    <body>
    <form method="post"enctype="multipart/form-data">
    <table border="0">
    <tr>
    <td>请上传文件:</td>
    <td><input type="hidden"name="MAX_FILE_SIZE"value=<?=MAX_FILE_SIZE;?>></td>
    <td><input type="file"name="upfile"></td>
    <td><input type="submit"name="sub"value="上传"></td>
    </tr>
    </table>
    </form>
    </body>
    </html>
    <?php 
    define("MAX_FILE_SIZE",102400);//定义文件MAX_FILE_SIZE
    $upfile=$_FILES["upfile"];
    //获取数组里的值
    $name=$upfile["name"];//文件名
    $type=$upfile["type"];//文件类型
    $size=$upfile["size"];//文件大小
    $tmp_name=$upfile["tmp_name"];//临时文件路径
    if(isset($_POST["sub"])){
    if(is_uploaded_file($tmp_name)){//判断上传文件是否存在
    switch($type){//switch判断类型
    case "image/png":$oktype=true;break;
    case "image/jpeg":$oktype=true;break;
    case "image/gif":$oktype=true;break;
    case "image/jpg":$oktype=true;break;
    case "image/bmp":$oktype=true;break;
    default:$oktype=true;
    }
    if($oktype){//如果返回true
    $error=$upfile["error"];//上传后系统返回的值
    /**
     * 0.上传成功
     * 1.超过文件大小,php.ini指定的值
     * 2.超过文件大小,MAX_FILE_SIZE
     * 3.文件部分上传
     * 4.文件上传失败
     * 5.上传的文件大小为0
     */ 
    if($error==0&&$size<=MAX_FILE_SIZE){//文件大小小于MAX_FILE_SIZE
    echo"<br>上传成功!<br>";
    //foreach($upload as $name =>$value){
    //echo $name."=".$value;
    //}
    echo "文件名:".$name."<br>";//输出文件名
    echo "文件大小:".$size."<br>";//输出文件大小
    echo "文件类型:".$type."<br>";//输出文件类型
    echo "文件临时文件路径:".$tmp_name."<br>";//输出文件临时路径
    $upload="upload/";//文件目录
    if(!file_exists($upload)){//判断文件目录是否存在
    mkdir($upload);//不存在,则创建文件目录
    chmod($upload,"700");//可读写浏览
    }
    $iconv=iconv("utf-8","gb2312",$name);//转换编码格式
    $destination=$upload.$iconv;//路径
    move_uploaded_file($tmp_name,$destination);//上传成功,则移动文件到创建的目录
    echo"图片预览:<br>";
    echo"<img src='$destination'></img>";//预览文件
    }else if($error==1){//错误类型
    echo "超过文件大小,在php.ini文件下修改"; 
    }else if($error==2){
    echo "超过文件大小,MAX_FILE_SIZE选项的设定值";
    }else if($error==3){
    echo "文件只有部分上传";
    }else if($error==4){
    echo "文件没有上传";
    }else if($error==5){
    echo "上传的文件大小为零";
    }else{
    echo "请上传jpeg,gif,pnh格式的文件";
    }
                }
                                        }
    }
    ?>
  • 相关阅读:
    SQL Server分页查询的万能存储过程
    前端相关及一些关键单词
    java shiro面试题
    java集合面试题
    芬芬购物系统基础配置2
    芬芬购物系统基础配置
    多线程安全
    多线程入门
    JAVA多线程
    java多线程
  • 原文地址:https://www.cnblogs.com/mzq123/p/4982607.html
Copyright © 2011-2022 走看看