文件的操做,如何作文件上传

上传就是本地的文件,好比说一张图片放到服务器上php

先作一个form表单安全

<form action="shangchuan.php" method="post" enctype="multipart/form-data">
    <input type="file" name="file" />
    <input type="submit" value="上传" />
</form>

enctype="multipart/form-data"   若是是用来上传文件的,就须要额外加这个属性服务器

这样就能够提交文件了post

这时处理页面使用FILES取编码

如何把文件存下来?安全保险spa

1.控制上传文件类型code

2.控制上传文件大小orm

3.防止文件名重复blog

   1. 修改保存的文件名  图片

    用户名+时间戳+随机数+文件名,这样能够防止重复

    流水号 作法就稍微复杂一些  每次我取名字的时候看最后的多大,而后再加个1

  

    使用文件夹

       public/1ch/2017-2-12/1.jpg  这样也能够尽可能避免重名,但不是很精确

4.保存文件

//判断文件上传是否出错
if($_FILES["file"]["error"])
{
    echo $_FILES["file"]["error"];
}
else
{
    //控制上传文件的类型,大小
    if(($_FILES["file"]["type"]=="image/jpeg" || $_FILES["file"]["type"]=="image/png") && $_FILES["file"]["size"]<1024000)
    {
        //找到文件存放的位置
        $filename = "./file/".date("YmdHis").$_FILES["file"]["name"];
        
        //转换编码格式
        $filename = iconv("UTF-8","gb2312",$filename);
        
        //判断文件是否存在
        if(file_exists($filename))
        {
            echo "该文件已存在!";
        }
        else
        {
            //保存文件
            move_uploaded_file($_FILES["file"]["tmp_name"],$filename);
        }
    }
    else
    {
        echo "文件类型不正确!";
    }
}
相关文章
相关标签/搜索