文件的上傳

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

頁面php

處理頁面windows

<?php
//var_dump($_FILES["file"]);
//思路:點擊上傳文件,文件已經暫時保存在默認路徑下。爲了安全及其餘須要因此要對所上傳文件加以控制。並長期保存。
//1.控制上傳文件的類型
//2.控制上傳文件的大小
//3.防止文件名重複
    //修改保存的文件名
        //用戶名+時間戳+隨機數+文件名
        //流水號
        
    //使用文件夾
        // public/lch/2017-2-12/1.jpg
        
//4.保存文件

//echo $_FILES["file"]["error"];
$at = $_FILES["file"];
//判斷文件上傳是否出錯
if($at["error"])  // 0 false
{
    echo $at["error"]; //ture    出錯
}
else            // false   成功
{
    //對上傳文件加以控制,如 類型‘大小
    // 也能夠 if($at["size"]<=1024000 && ($at["type"]=="image/jpeg" || $at["type"]=="image/png")){}else{}
    if($at["size"]<=1024000)
    {
        if($at["type"]=="image/jpeg" || $at["type"]=="image/png")
        {
                //自定義文件位置並命名,防止重名文件加時間戳
                $filename = "../tupian/".date("YmdHis").$at["name"];
                //因爲windows文件默認GB格式  需轉化不然文字會亂碼
                $filename = iconv("utf-8","gb2312",$filename);
                //判斷該文件是否已經存在
                if(file_exists($filename))
                {
                    echo "文件已存在!";
                }
                else
                {
                    //保存文件
                    move_uploaded_file($at["tmp_name"],$filename); //改變路徑
                }
                
        }
        else
        {
            echo "文件格式不正確!";
        }
    }
    else
    {
        echo "文件過大!";
    }
}
相關文章
相關標籤/搜索