PHP文件上傳

PHP腳本可以與HTML表單一起使用,以允許用戶將文件上載到服務器。最初將文件上載到臨時目錄中,然後通過PHP腳本重定位到目標目標。phpinfo.php頁面中的upload_tmp_dir信息將用於文件上載的臨時目錄,並且可以上載的文件的最大允許大小表示爲upload_max_filesize。這些參數在PHP配置文件php.ini中設置。
以下HTM代碼創建一個上傳器表單。此表單將方法屬性設置爲post,並將enctype屬性設置爲multipart/form-data

<?php
if(isset($_FILES['image'])){
        $errors= array();
        $file_name = $_FILES['image']['name'];
        $file_size = $_FILES['image']['size'];
        $file_tmp = $_FILES['image']['tmp_name'];
        $file_type = $_FILES['image']['type'];
        $name_arr = explode('.',$_FILES['image']['name']);
        $file_ext=strtolower(end($name_arr));
        $extensions= array("jpeg","jpg","png");
        /* 規定可以上傳的擴展名文件 */
        if(in_array($file_ext,$extensions)=== false){
                $errors[]="不允許擴展,請選擇一個jpeg或png文件。";
        }
        /* 規定可以上傳的文件大小 */
        if($file_size > 2097152) {
                $errors[]='文件大小必須不超過2 MB';
        }
        if(empty($errors)==true) {
            /* 把圖片從臨時文件夾內的文件移動到當前腳本所在的目錄 */
                move_uploaded_file($file_tmp,"./".$file_name);
                echo "成功上傳";
        }else{
                print_r($errors);
        }
}
?>
<html>
<body>

<form action = "" method = "POST" enctype = "multipart/form-data">
    <input type = "file" name = "image" />
    <input type = "submit" name="提交" />
    <ul>
        <li>文件名: <?php echo isset($_FILES['image']['name']) ? $_FILES['image']['name'] : '' ; ?>
        <li>文件大小: <?php echo isset($_FILES['image']['size']) ? $_FILES['image']['size'] : '' ; ?>
        <li>文件類型: <?php echo isset($_FILES['image']['type']) ? $_FILES['image']['type'] : '' ; ?>
    </ul>
</form>
</body>
</html>

查看顯示的效果

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章