php基礎四之檔案上傳

來源:互聯網
上載者:User
這篇文章介紹的內容是關於php的基礎 ,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

<!-- 檔案上傳 --><form action="" enctype="multipart/form-data" method="post">    <input type="file" name="檔案"/><br />    <input type="submit" value="上傳"/></form><?php//檔案上傳之需要注意php.ini檔案//     php.ini檔案中的配置//     file_uploads//     post_max_size//     upload_max_filesize//     memory_limit// print_r($_FILES["upfile"]);if (is_uploaded_file($_FILES['upfile']['tmp_name'])) {    $upfile=$_FILES["upfile"];    $name=$upfile["name"];    $type=$upfile["type"];    $size=$upfile["size"];    $tmp_name=$upfile["tmp_name"];        switch ($type) {        case 'image/pjpeg':            $okType=true;            break;        case 'image/jpeg':            $okType=true;            break;        case 'image/gif':            $okType=true;            break;        case 'image/png':            $okType=true;            break;    }    if ($okType) {        $error=$upfile["error"];        echo "==================<br/>";        echo "上傳的檔案名稱是:".$name."<br/>";        echo "上傳的檔案類型是:".$type."<br/>";        echo "上傳的檔案大小是:".$size."<br/>";        echo "上傳之後系統返回的值是:".$error."<br/>";        echo "上傳的檔案臨時存放的檔案路徑是:".$tmp_name."<br/>";                echo "開始移動上傳檔案<br/>";        move_uploaded_file($tmp_name, 'up/'.$name);        $destination="up/".$name;        echo "================<br/>";        echo "上傳資訊:<br/>";        if ($error==0) {            echo "檔案上傳成功!";            echo "<br>圖片預覽<br>";            echo "<img src=".$destination.">";        }elseif ($error==1){            echo "超過了檔案大小,在php.ini檔案中設定";        }elseif ($error==2){            echo "超過檔案的大小MAX_FILE_SIZE選項指定的值";        }elseif ($error==3){            echo "檔案只有部分被上傳";        }elseif ($error==4){            echo "上傳檔案大小為0";        }    }else {        echo "請上傳jpg,gif,png等格式的圖片";    }}?><!-- 檔案上傳的步驟 --><?php//     一、判斷是否有錯誤碼//     二、自訂判斷是否超出檔案大小範圍//     三、判斷尾碼名和mime類型是否符合//     四、組建檔案名//     五、判斷是否是上傳檔案//     六、移動臨時檔案到指定位置?><!-- 檔案上傳表單注意事項 --><html>    <head>        <meta charset="utf-8"/>        <title>單檔案上傳</title>    </head>    <body>        <form action="file.php" method="post"        enctype="multipart/form-data">        <input type="file" name="filename"/>        <input type="submit" value="上傳"/>        </form>    </body></html><!-- 按照數組和步驟完成檔案上傳 --><!-- 第一步,判斷錯誤碼 --><!-- 第二步,判斷檔案是否超出大小 --><!-- 第三步,判斷檔案的mime類型是否正確 --><!-- 第四步,產生指定的路徑和檔案名稱 --><!-- 第五步,判斷是否是上傳檔案 --><!-- 第六步,移動檔案到指定位置 --><form action='' method='post' enctype='multipart/form-data'>    <input type='file' name='myfile' />    <input type="submit" /></form><?php    echo '<pre>';    var_dump($_FILES['myfile']);    echo '</pre>';        if ($_FILES['myfile']['error'] > 0) {        switch ($_FILES['myfile']['error']) {            case '1':                echo '檔案過大';                break;            case '2':                echo '檔案超出指定大小';                break;            case '3':                echo '只有部分檔案被上傳';                break;            case '4':                echo '檔案沒有被上傳';                break;            case '6':                echo '找不到指定檔案';                break;            case '7':                echo '檔案寫入失敗';                break;            default:                echo '上傳出錯<br/>';            }    }else{        $MAX_FILE_SIZE = 100000;        if ($_FILES['myfile']['size'] > $MAX_FILE_SIZE) {            exit("檔案超出指定大小");        }                $allowSuffix = array('jpg','gif');                $myImg = explode('.', $_FILES['myfile']['name']);        $myImgSuffix = array_pop($myImg);        if (!in_array($myImgSuffix, $allowSuffix)) {            exit("檔案尾碼名不符");        }        $allowMime = array(            "image/jpg",            "image/jpeg",            "image/pjpeg",            "image/gif"        );        if (!in_array($_FILES['myfile']['type'],             $allowMime)) {            exit('檔案格式不正確,請檢查');        }        $path = "upload/images/";        $name = data('Y').date('m').date("d")        .date('H').date('i').date('s').        rand(0,9).'.'.$myImgSuffix;                if (is_uploaded_file($_FILES['file']['tmp_name'])) {            if (move_uploaded_file($_FILES['myfile']['tmp_name'], $path.$name)) {                echo "上傳成功";            }else {                echo '上傳失敗';            }        }    }?><!-- 多檔案上傳 --><html>    <head>        <meta charset="utf-8" />        <title>單檔案上傳</title>    </head>    <body>        <form action="" method="post" enctype="multipart/form-data">            <input type="file" name="file[]" />            <input type="file" name="file[]" />            <input type="sumbit" value="上傳" />        </form>    </body></html><?php    var_dump($_FILES);?><?php    for ($i=0;$i < count($_FILES['file']['name']);$i++){        if (is_uploaded_file($_FILES['file']['tmp_name'][$i]) &&            $_FILES['file']['error'][$i] == 0) {            if (move_uploaded_file($_FILES['file']['tmp_name'][$i],                'upload/'.$_FILES['file']['name'][$i])) {                echo "上傳成功";            }else {                echo '上傳失敗';            }        }    }?><!-- 檔案上傳進度處理 --><!-- 結合jquery、javascript、ajax -->

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.