PHP 文件的上傳與檢測
二維是它的當前屬性,重要的有以下幾個:
$_FILES['file']['name']: 文件原始名稱
$_FILES['file']['type']: 文件類型
$_FILES['file']['size']: 上傳的文件大小
$_FILES['file']['tmp_name']: 服務(wù)器上的臨時文件夾
$_FILES['file']['error']: 上傳錯誤代碼
$_SERVER['PHP_SELF']:當前php腳本
enctype="multipart/form-data" :允許通過表單上傳文件
method:請求類型必須是POST
處理腳本的三種語法:
1. 嚴格的寫法:$_SERVER['PHP_SELF']:建議實際工作中用htmlspecialchars()進行防跨域攻擊處理
2. 死板的寫法,直接寫上當前文件名: demo6.php
3. 懶的寫法: 空,啥與不寫,默認就是提交到當前頁面的php腳本處理
form樣式
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" method="POST" enctype="multipart/form-data">
用隱藏域設(shè)置允許上傳的文件大小,僅考參考
<input type="hidden" name="MAX_FILE_SIZE" value="542488">
PHP樣式檢測請求類型是否POST
$_SERVER['REQUEST_METHOD'] == 'POST'
檢測是否有文件被上傳
isset($_FILES['upload'])
將文件先移動到臨時目錄
move_uploaded_file($_FILES['upload']['tmp_name'], "upload/{$_FILES['upload']['name']}")
對上傳錯誤進行處理
if ($_FILES['upload']['error'] > 0 ) {
echo '<p>錯誤原因是:<strong>';
switch ($_FILES['upload']['error']) {
case 1:
echo '文件超過了php.ini配置中設(shè)置的大小';
break;
case 2:
echo '文件超過了表單中常量設(shè)置的大小';
break;
case 3:
echo '僅有部分文件被上傳';
break;
case 4:
echo '沒有文件被上傳';
break;
case 6:
echo '沒有可用的臨時文件夾';
break;
case 7:
echo '磁盤已滿,寫入失敗';
break;
case 8:
echo '上傳意外中止';
break;
default:
echo '系統(tǒng)未知錯誤';
break;
}
echo '</strong></p>';
}
把創(chuàng)建的臨時文件刪除,當然系統(tǒng)也會在結(jié)束會話時自動清空
if (file_exists($_FILES['upload']['tmp_name']) && is_file($_FILES['upload']['tmp_name'])) {
unlink($_FILES['upload']['tmp_name']);
}
猜你喜歡



-
網(wǎng)站建設(shè)公司如何做網(wǎng)站頁面設(shè)計?
在網(wǎng)站建設(shè)過程中網(wǎng)頁設(shè)計有多重要?目前北京網(wǎng)站建設(shè)公司在報價環(huán)節(jié)網(wǎng)站設(shè)計占比為40%-50%,前端開發(fā)和程序開發(fā)兩項占比50%左右。在做網(wǎng)站頁面設(shè)計時候,我們應(yīng)該考慮如何利用手中的有限數(shù)據(jù)來設(shè)定或選定框架及主體結(jié)構(gòu)。以及使用什么樣的色調(diào)...
-
網(wǎng)站建設(shè)通過友情鏈接做優(yōu)化的好處
隨著互聯(lián)網(wǎng)的發(fā)展,揚州網(wǎng)站建設(shè)成為了企業(yè)熱衷的工作,這是因為其發(fā)揮的作用已經(jīng)被企業(yè)所認可所致,但是新的問題產(chǎn)生了,企業(yè)越多,網(wǎng)站就越多,競爭肯定越大,所以網(wǎng)站建設(shè)之后,更重要的工作才剛剛開始,那就是優(yōu)化網(wǎng)站,提升曝光率,提升網(wǎng)站的人氣。 &nbs...
-
高端網(wǎng)站定制不同價格有何區(qū)別
高端網(wǎng)站定制的價格差異主要由以下幾個因素決定: 1、項目規(guī)模:網(wǎng)站定制的價格通常與項目規(guī)模成正比。小型網(wǎng)站由于涉及的功能和頁面較少,定制價格相對較低;而大型網(wǎng)站則需要更多的開發(fā)和設(shè)計工作,因此定制價格會更高。 2、...
-
PHP 函數(shù)substr(),strstr(),strpos()的運用
substr() 函數(shù)返回字符串的一部分。 語法; substr(string,start,length) substr(必需,必需,可選) 實例: $rel='Welcome to xinz56.com'; echo...
-
小程序制作完成后,該如何運營
1、抓住新的流量入口:抓住微信視頻號、看一看、搜一搜等新的流量入口,運營者可以借助這些新的入口完成私域流量積累,再結(jié)合小程序的鏈路完成轉(zhuǎn)化,一定會是一個爆發(fā)的點。 2、善用營銷玩法:在小程序店鋪運營過程中,讓用戶停留的第*步就是整...