<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    forget and forget

    能吃能睡是福;能忘是大福......

    posts - 39, comments - 26, trackbacks - 0, articles - 10
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    php上傳單個文件

    Posted on 2006-06-08 22:09 橘子 閱讀(1028) 評論(0)  編輯  收藏 所屬分類: WEB開發

    ??? PHP上傳文件的問題:
    一:1、上傳單個文件的時候。在表單頁面設置文件輸入域,<input name="userfile" type="file" />然后表單要加入<form enctype="multipart/form-data" action="post.php" method="post">這個屬性,這是告訴瀏覽器我要上傳文件的屬性,一定要加上。
    ??? 2、設置好了表單,接下來的事就是讀取表單的變量,如果你還定義了其他的變量,那么php使用$_POST來讀出,如:$uservar=$_POST["uservar"],然而文件是存在$_FILES中,具體見下面:
    ?
    ? * $_FILES['userfile']['name'] 客戶端機器文件的原名稱。
    ? ?* $_FILES['userfile']['type'] 文件的 MIME 類型,需要瀏覽器提供該信息的支持,例如“image/gif”。
    ? ?* $_FILES['userfile']['size'] 已上傳文件的大小,單位為字節。
    ? ?* $_FILES['userfile']['tmp_name'] 文件被上傳后在服務端儲存的臨時文件名。
    ? ?* $_FILES['userfile']['error'] 和該文件上傳相關的錯誤代碼

    ? 1. 值:0; 沒有錯誤發生,文件上傳成功。
    ? 2. 值:1; 上傳的文件超過了 php.ini 中 upload_max_filesize 選項限制的值。
    ? 3. 值:2; 上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值。
    ? 4. 值:3; 文件只有部分被上傳。
    ? 5. 值:4; 沒有文件被上傳。
    3、完成上傳過程。示例代碼:
    (1)
    <?php
    $upload_file=$_FILES['userfile']['tmp_name'];
    $upload_file_name=$_FILES['userfile']['name'];
    if($upload_file){
    ?$file_size_max = 20000000;// 1M限制文件上傳最大容量(bytes)
    ?$store_dir = "attfile/";// 上傳文件的儲存位置
    ?$accept_overwrite = 1;//是否允許覆蓋相同文件
    ?// 檢查文件大小
    ?if ($upload_file_size > $file_size_max) {
    ??echo "對不起,你的文件容量大于規定";
    ??exit;
    ?}
    ?// 檢查讀寫文件
    ?if (file_exists($store_dir . $upload_file_name) && !$accept_overwrite) {
    ??echo?? "存在相同文件名的文件";
    ??exit;
    ?}
    ?//復制文件到指定目錄
    ?if (!move_uploaded_file($upload_file,$store_dir.$upload_file_name)) {
    ??echo "復制文件失敗";
    ??exit;
    ?}
    }
    echo?? "<p>你上傳了文件:";
    echo $_FILES['userfile']['name'];
    echo "<br>";
    //客戶端機器文件的原名稱。
    Echo?? "文件的 MIME 類型為:";
    echo $_FILES['userfile']['type'];
    //文件的 MIME 類型,需要瀏覽器提供該信息的支持,例如“image/gif”。
    echo "<br>";

    Echo?? "上傳文件大小:";
    echo $_FILES['userfile']['size'];
    //已上傳文件的大小,單位為字節。
    echo "<br>";

    Echo?? "文件上傳后被臨時儲存為:";
    echo $_FILES['userfile']['tmp_name'];
    //文件被上傳后在服務端儲存的臨時文件名。
    echo "<br>";

    $Erroe=$_FILES['userfile']['error'];
    switch($Erroe){
    ?case 0:
    ?Echo?? "上傳成功"; break;
    ?case 1:
    ?Echo?? "上傳的文件超過了 php.ini 中 upload_max_filesize 選項限制的值."; break;
    ?case 2:
    ?Echo?? "上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值。";?? break;
    ?case 3:
    ?Echo?? "文件只有部分被上傳";break;
    ?case 4:
    ?Echo?? "沒有文件被上傳";break;
    }
    ?>
    (2)<?php
    $uploaddir= '../attfile/';//設置上傳的文件夾地址
    $FILES_EXT=array('.gif','.jpg','.bmp');//設置允許上傳文件的類型
    $MAX_SIZE = 20000000;//設置文件上傳限制20000000byte=2M
    for ($i=0;$i<count($userfile);$i++){
    ?$FILES_NAME=$_FILES['userfile']['name'][$i];//客戶端文件名
    }
    //echo $FILES_NAME;
    //取出文件后綴名,strrpos()從標記開始前字節個數(不算標記),substr()顯示從第strrpos()之后的字符
    $file_ext=substr($FILES_NAME,strrpos($FILES_NAME,"."));
    //echo $file_ext;
    //檢查文件大小
    if($_FILES['userfile']['size']>$MAX_SIZE){
    ?echo "文件大小超程序允許范圍!";
    ?exit;
    }
    //檢查文件類型
    if(in_array($file_ext, $FILES_EXT)){
    ?$_FILES['userfile']['name']=date("YmdHis").rand().$file_ext;
    ?$uploadfile = $uploaddir.$_FILES['userfile']['name'];//上傳后文件的路徑及文件名
    ?//將上傳后的路徑寫入到數據庫中

    ?//用move函數生成臨時文件名,并按照 $_FILES['userfile']['name']上傳到$uploaddir下
    ?if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    ??print "\n上傳成功!";
    ?} else {
    ??print "上傳錯誤!? 以下是上傳的信息:\n";
    ??print_r($_FILES);
    ?}
    }
    else{
    ?echo "{$file_ext}不是允許上傳的文件類型!";
    ?exit;
    }
    ?>



    小技巧>>1、當在提交時,希望確認是否要提交可以在<form>里如這樣加入:<form onsubmit="return confirm('你真的要提交嗎?')">
    2、在php里希望返回時所有在文本框里的東西都保留可以這樣:<a href=javascript:history.back(1)>重新來過</a>。

    主站蜘蛛池模板: 亚洲系列中文字幕| 亚洲自偷自偷在线制服| 国产精品亚洲精品观看不卡| 精品久久久久久亚洲| 国产精品亚洲精品日韩已方| 免费无毒a网站在线观看| 免费永久在线观看黄网站| 美女被爆羞羞网站免费| 最近2019免费中文字幕视频三| 久久夜色精品国产亚洲AV动态图| 亚洲人成综合网站7777香蕉 | 亚洲国产高清视频在线观看| 黄页网址在线免费观看| 亚洲日韩中文在线精品第一 | 免费大片在线观看网站| 一级毛片视频免费观看| 亚洲春色在线视频| 亚洲日本在线免费观看| 亚洲日本va中文字幕久久| 337P日本欧洲亚洲大胆艺术图 | 国产亚洲人成网站观看| 无码成A毛片免费| 亚洲人AV永久一区二区三区久久| v片免费在线观看| 亚洲成A人片在线观看WWW| 亚洲三级在线免费观看| 亚洲色欲色欲www| 免费在线观看中文字幕| 日本视频在线观看永久免费| 亚洲片一区二区三区| 99热精品在线免费观看| 亚洲欧美日韩自偷自拍| 久久精品国产精品亚洲| 精品97国产免费人成视频| 亚洲精品网站在线观看你懂的| 成年女人毛片免费播放人| 羞羞视频免费网站在线看| 亚洲午夜电影一区二区三区| 亚洲精品高清在线| 嫖丰满老熟妇AAAA片免费看| 特级毛片aaaa级毛片免费|