首页 > 代码库 > 文件上传

文件上传

 

简单的显示页面

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<!--
上传文件关键字 method="post" 

如果选择的是上传文件提交用这句代码  enctype="multipart/form-data"
-->
<body>
<form action="wenjianSC_chuli.php" method="post" enctype="multipart/form-data">

    <input type="file" name="filo" />
    <input type="submit" value=http://www.mamicode.com/"上传" />
</form>


</body>
</html>

 

 

文件上传处理页面

 

 

 

<?php
//var_dump($_FILES);
//上传一个文件输出一下,name:文件名。type:显示上传的类型  tmp_name:显示文件上传到服务器的位置,不操作此文件,关闭浏览器会自动的删除。  error:判断上传成功int 0或失败显示其它的。  size:判断上传的文件大小int 264390 。。

//做文件上传前提需要做的事情

//1.判断是否出错    关键字: error
//2.控制上传的格式    不能上传 .php文件  .ese文件   .html的文件
//3.控制上传文件的大小
//4.控制文件名不能重复(如果重复不能上传)
    //怎么让文件名不重复  加时间戳.date["YmdHis"]
    //1.文件名自动生成 
    //2.使用文件夹的方式
    
//5.保存文件


//判断文件是否存在关键字 file_exists
//上传关键字move移动uploaded上传file文件  拼接一起move_uploaded_file


if(!$_FILES["file"]["error"])  //上传file这个文件  再判断上传时是否出错error
{
    //先找到要上传的文件[file] type=判断文件上传的格式  并且 这个文件[file] size不能小于等于多少
    if($_FILES["file"]["type"]=="image/jpeg" && $_FILES["file"]["size"]<=1024000)
    {
        //存到./当前文件夹file文件里 文件名后面加时间戳    name浏览器系统内部的文件后缀 
        $filename = "./file/".date("YmdHis").$_FILES["file"]["name"];
        //转编码格式关键字iconu   目标编码格式gb2312 ,转这个接受者 
        $filename = iconv("UTF-8","gb2312",$filename);
        
        if(!file_exists($filename))//判断文件是否存在
        {
            //上传  找到要上传的临时文件,tmp_name临时文件的路径,移动到造好的接受值名
            move_uploaded_file($_FILES["file"]["tmp_name"],$filename);
        }
        else//如果文件存在,就输出下面一句话
        {
            echo "该文件已存在";
        }
    }
    else
    {
        echo "文件格式或大小不对";
    }
}
else  //如果上传没错  就输出下面
{
    echo $_FILES["file"]["error"];
}

 

文件上传