PHP原生檔案上傳(單檔案多檔案均可)簡單案例

2022-05-09 08:21:14 字數 3293 閱讀 3459

本案例共三個檔案,目錄結構如下圖所示:

do_action1.php(前台頁面)頁面的**如下:

<?php 

header("content-type:text/html;charset=utf-8;");

echo "";

//print_r($_files);

require_once "upload_function1.php";

$files=getfiles();

//print_r($files);

foreach($files

as$fileinfo

)else }

//$uploadfiles=array_values(array_filter($uploadfiles)); 過濾陣列中的空值並從新排序

print_r($uploadfiles);

upload.html(後台頁面)頁面的**如下:

<

html

>

<

head

>

<

meta

charset

="utf-8"

>

head

>

<

body

>

<

form

action

="do_action1.php"

method

="post"

enctype

="multipart/form-data"

>

<

label

for="file"

>請選擇要上傳的檔案:

label

><

input

type

="file"

name

="file1"

id="file"

accept

="image/jpeg,image/gif,image/png"

/>

<

br />

<

label

for="file"

>請選擇要上傳的檔案:

label

><

input

type

="file"

name

="file2"

id="file"

/>

<

br />

<

label

for="file"

>請選擇要上傳的檔案:

label

><

input

type

="file"

name

="file"

id="file"

/>

<

br />

<

label

for="file"

>請選擇要上傳的檔案:

label

><

input

type

="file"

name

="file"

id="file"

/>

<

br />

<

label

for="file"

>請選擇要上傳的檔案:

label

><

input

type

="file"

name

="file"

id="file"

multiple

/>

<

br />

<

input

type

="submit"

name

="submit"

value

="上傳"

/>

form

>

body

>

html

>

upload_function1.php(功能函式)頁面的**如下:

<?php 

//構建上傳檔案的資訊

function

getfiles()

elseif(is_array($file['name']))}}

return

$files;}

//得到副檔名

function getext($filename)//

產生唯一字串

//檢測上傳檔案的檔案型別

$ext=getext($fileinfo['name']);//

得到上傳檔案的字尾

if(!in_array($ext,$allowext

))

if($flag

) }

//檢測檔案是否是通過http post上傳上來的

if(!is_uploaded_file($fileinfo['tmp_name']))

if(isset($res)) return

$res

;

$path='./uploads';

if(!file_exists($path

))

$uniname=getuniname();

$destination=$path.'/'.$uniname.'.'.$ext

;

if(!move_uploaded_file($fileinfo['tmp_name'],$destination

))

$res['mes']=$fileinfo['name'].'上傳成功';

$res['dest']=$destination

;

return

$res

; }

else

return

$res

; }

}

本案例最終可以得到上傳成功的的儲存位置以陣列方式儲存方便後期與資料庫對接,稍微改造即可拿去用了!

struts檔案上傳(單檔案)

第01步 配置web.xml 第02步 編寫action類 package com.self.action import j a.io.file import org.apache.commons.io.fileutils import org.apache.struts2.servletactio...

PHP上傳(單個)檔案示例

通過 php,可以把檔案上傳到伺服器。建立乙個檔案上傳表單 允許使用者從表單上傳檔案是非常有用的。請看下面這個供上傳檔案的 html 表單 請留意如下有關此表單的資訊 標籤的 enctype 屬性規定了在提交表單時要使用哪種內容型別。在表單需要二進位制資料時,比如檔案內容,請使用 multipart...

Springboot上傳單檔案

springboot實現單檔案上傳 restcontroller public class fileuploadcontroller 獲取的名稱 string oldname file.getoriginalfilename 隨機生成uuid來作為的字首加上的格式jpg png string new...