国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP高級教程(4)-PHP文件上傳

2020-03-24 18:17:09
字體:
來源:轉載
供稿:網友
請看下面這個供上傳文件的 HTML 表單: html
body
form action= upload_file.php method= post
enctype= multipart/form-data
label for= file Filename: /label
input type= file name= file id= file /
br /
input type= submit name= submit value= Submit /
/form
/body
/html 請留意如下有關此表單的信息: form 標簽的 enctype 屬性規定了在提交表單時要使用哪種內容類型。在表單需要二進制數據時,比如文件內容,請使用 multipart/form-data 。 input 標簽的 type= file 屬性規定了應該把輸入作為文件來處理。舉例來說,當在瀏覽器中預覽時,會看到輸入框旁邊有一個瀏覽按鈕。注釋:允許用戶上傳文件是一個巨大的安全風險。請僅僅允許可信的用戶執行文件上傳操作。創建上傳腳本 upload_file.php 文件含有供上傳文件的代碼: ?php
if ($_FILES[ file ][ error ] 0)
{
echo Error: . $_FILES[ file ][ error ] . br /
}
else
{
echo Upload: . $_FILES[ file ][ name ] . br /
echo Type: . $_FILES[ file ][ type ] . br /
echo Size: . ($_FILES[ file ][ size ] / 1024) . Kb br /
echo Stored in: . $_FILES[ file ][ tmp_name
}
? 通過使用 PHP 的全局數組 $_FILES,你可以從客戶計算機向遠程服務器上傳文件。第一個參數是表單的 input name,第二個下標可以是 name , type , size , tmp_name 或 error 。就像這樣:$_FILES[ file ][ name ] - 被上傳文件的名稱
$_FILES[ file ][ type ] - 被上傳文件的類型
$_FILES[ file ][ size ] - 被上傳文件的大小,以字節計
$_FILES[ file ][ tmp_name ] - 存儲在服務器的文件的臨時副本的名稱
$_FILES[ file ][ error ] - 由文件上傳導致的錯誤代碼 這是一種非常簡單文件上傳方式?;诎踩矫娴目紤],您應當增加有關什么用戶有權上傳文件的限制。上傳限制在這個腳本中,我們增加了對文件上傳的限制。用戶只能上傳 .gif 或 .jpeg 文件,文件大小必須小于 20 kb: ?phpif ((($_FILES[ file ][ type ] == image/gif )
|| ($_FILES[ file ][ type ] == image/jpeg )
|| ($_FILES[ file ][ type ] == image/pjpeg ))
($_FILES[ file ][ size ] 20000))
{
if ($_FILES[ file ][ error ] 0)
{
echo Error: . $_FILES[ file ][ error ] . br /
}
else
{
echo Upload: . $_FILES[ file ][ name ] . br /
echo Type: . $_FILES[ file ][ type ] . br /
echo Size: . ($_FILES[ file ][ size ] / 1024) . Kb br /
echo Stored in: . $_FILES[ file ][ tmp_name
}
}
else
{
echo Invalid file
}? 注釋:對于 IE,識別 jpg 文件的類型必須是 pjpeg,對于 FireFox,必須是 jpeg。保存被上傳的文件上面的例子在服務器的 PHP 臨時文件夾創建了一個被上傳文件的臨時副本。這個臨時的復制文件會在腳本結束時消失。要保存被上傳的文件,我們需要把它拷貝到另外的位置: ?php
if ((($_FILES[ file ][ type ] == image/gif )
|| ($_FILES[ file ][ type ] == image/jpeg )
|| ($_FILES[ file ][ type ] == image/pjpeg ))
($_FILES[ file ][ size ] 20000))
{
if ($_FILES[ file ][ error ] 0)
{
echo Return Code: . $_FILES[ file ][ error ] . br /
}
else
{
echo Upload: . $_FILES[ file ][ name ] . br /
echo Type: . $_FILES[ file ][ type ] . br /
echo Size: . ($_FILES[ file ][ size ] / 1024) . Kb br /
echo Temp file: . $_FILES[ file ][ tmp_name ] . br / if (file_exists( upload/ . $_FILES[ file ][ name ]))
{
echo $_FILES[ file ][ name ] . already exists.
}
else
{
move_uploaded_file($_FILES[ file ][ tmp_name ],
upload/ . $_FILES[ file ][ name ]);
echo Stored in: . upload/ . $_FILES[ file ][ name
}
}
}
else
{
echo Invalid file
}
? 上面的腳本檢測了是否已存在此文件,如果不存在,則把文件拷貝到指定的文件夾。注釋:這個例子把文件保存到了名為 upload 的新文件夾。
html教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乃东县| 于都县| 柳江县| 安图县| 龙州县| 柏乡县| 呼图壁县| 焦作市| 辉南县| 双桥区| 麟游县| 乐都县| 鄂伦春自治旗| 田东县| 宁远县| 孟津县| 莲花县| 河北省| 潮安县| 乌拉特中旗| 五大连池市| 东山县| 定结县| 定襄县| 来安县| 大足县| 乌什县| 普兰店市| 临沂市| 桓台县| 星子县| 河间市| 班玛县| 桐柏县| 响水县| 吴忠市| 宁波市| 台前县| 鄱阳县| 湖口县| 彰化县|