您好,登錄后才能下訂單哦!
up.php上傳文件
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>上傳v0.1 - 紫游</title> </head> <body align = "center"> 上傳默認2M <br /> 根據大小命名+原始名稱,覆蓋文件。<br /> 類型"jpg","png","ico","bmp","gif","tif","tga","txt","zip","rar","7z","gz","mp3","wav","m4a","mp4","3gp"<br /> <br /> <form enctype="multipart/form-data" method="post"> <label for="file">請選擇上傳的文件</label><br /> <input type="file" name="file" size="40" /> <input type="submit" name="submit" value="確定" /> </form><br /> </body> <?php //例子說明: //該例子只是簡單演示了文件上傳的流程,請勿直接用于實際項目 //該例子中缺少對用戶權限的檢查 //如果上傳后的文件沒有做重命名,則需要做文件重名時的邏輯處理 //寫入數據表文件信息由于涉及到數據庫操作,暫略。寫入數據表的信息應該包括文件上傳的時間,上傳的用戶ID以及存儲的位置,以便清理上傳無效的文件以及文件過期管理等 //無提交校驗,要防止遠程提交,可以在表單生成頁面產生一個會話ID,然后在upload.php頁面做校驗以防止遠程提交 //配置php.ini文件(以20M以下大小的文件為例) //查找以下選項并修改-> //file_uploads = On ; //打開文件上傳選項 //upload_max_filesize = 20M ; //上傳文件上限 //如果要上傳比較大的文件,必須把服務器緩存上限調大,把腳本最大執行時間變長 //post_max_size = 20M ;post上限 //max_execution_time = 1800 ; 腳本最大執行時間 //max_input_time = 1800 ; 腳本請求解析的最大時間 //memory_limit = 128M ;(128MB)內存上限 //包含端口號的完整地址 $urlduankou = 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; //只取路徑 $urllujing='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"]; $urllujing1 = dirname($urllujing); //取服務器IP端口 $SERVERIPport = $_SERVER["SERVER_ADDR"].':'.$_SERVER["SERVER_PORT"]; //文件存儲路徑 $file_path="upload/"; //664權限為文件屬主和屬組用戶可讀和寫,其他用戶只讀。 if(is_dir($file_path)!=TRUE) mkdir($file_path,0664) ; //定義允許上傳的文件擴展名 $ext_arr = array("jpg","png","ico","bmp","gif","tif","tga","txt","zip","rar","7z","gz","mp3","wav","m4a","mp4","3gp"); if (empty($_FILES) === false) { //判斷檢查 if($_FILES['file']['size'] > 2097152){ exit("對不起,您上傳的照片超過了2M=2097152。"); } if($_FILES["file"]["error"] > 0){ exit("錯誤:".$_FILES["file"]["error"]); //值:0; 沒有錯誤發生,文件上傳成功。 //值:1; 上傳的文件超過了 php.ini 中 upload_max_filesize 選項限制的值。 //值:2; 上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值。 //值:3; 文件只有部分被上傳。 //值:4; 沒有文件被上傳。 } //上傳的文件名名稱 $FILESname = $_FILES["file"]["name"]; //文件字節大小 $FILESsize = $_FILES['file']['size']; //echo "名稱: " . $_FILES["file"]["name"] . "<br />"; //echo "類型: " . $_FILES["file"]["type"] . "<br />"; //echo "大小: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />"; //echo "臨時名稱: " . $_FILES["file"]["tmp_name"]."<br /> "; //獲得文件擴展名 $temp_arr = explode(".", $FILESname); $file_ext = array_pop($temp_arr); $file_ext = trim($file_ext); $file_ext = strtolower($file_ext); //echo $FILESsize."<br /> "; //echo $file_ext."<br /> "; //檢查擴展名 if (in_array($file_ext, $ext_arr) === false) { exit("上傳的文件類型不支持。"); } //以時間戳重命名文件 $new_name = time().".".$file_ext; //根據大小加名稱 $size_name = $FILESsize."_".$FILESname; //將文件移動到存儲目錄下 //move_uploaded_file($_FILES["file"]["tmp_name"],"$file_path" . $new_name); move_uploaded_file($_FILES["file"]["tmp_name"],"$file_path" . $size_name); //向數據表寫入文件存儲信息以便管理 echo "\n文件上傳成功!".$SERVERIPport."","<br /> \n"; echo 'URL:<a href="'.$urllujing1."/".$file_path.$size_name.'" target="_blank">'.$urllujing1."/".$file_path.$size_name.'</a><br />'; exit; } else { echo "上傳文件不正確,請檢查。"; } ?>
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。