PHP 文件的上傳與檢測(cè)
二維是它的當(dāng)前屬性,重要的有以下幾個(gè):
$_FILES['file']['name']: 文件原始名稱
$_FILES['file']['type']: 文件類型
$_FILES['file']['size']: 上傳的文件大小
$_FILES['file']['tmp_name']: 服務(wù)器上的臨時(shí)文件夾
$_FILES['file']['error']: 上傳錯(cuò)誤代碼
$_SERVER['PHP_SELF']:當(dāng)前php腳本
enctype="multipart/form-data" :允許通過表單上傳文件
method:請(qǐng)求類型必須是POST
處理腳本的三種語法:
1. 嚴(yán)格的寫法:$_SERVER['PHP_SELF']:建議實(shí)際工作中用htmlspecialchars()進(jìn)行防跨域攻擊處理
2. 死板的寫法,直接寫上當(dāng)前文件名: demo6.php
3. 懶的寫法: 空,啥與不寫,默認(rèn)就是提交到當(dāng)前頁面的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樣式檢測(cè)請(qǐng)求類型是否POST
$_SERVER['REQUEST_METHOD'] == 'POST'
檢測(cè)是否有文件被上傳
isset($_FILES['upload'])
將文件先移動(dòng)到臨時(shí)目錄
move_uploaded_file($_FILES['upload']['tmp_name'], "upload/{$_FILES['upload']['name']}")
對(duì)上傳錯(cuò)誤進(jìn)行處理
if ($_FILES['upload']['error'] > 0 ) {
echo '<p>錯(cuò)誤原因是:<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 '沒有可用的臨時(shí)文件夾';
break;
case 7:
echo '磁盤已滿,寫入失敗';
break;
case 8:
echo '上傳意外中止';
break;
default:
echo '系統(tǒng)未知錯(cuò)誤';
break;
}
echo '</strong></p>';
}
把創(chuàng)建的臨時(shí)文件刪除,當(dāng)然系統(tǒng)也會(huì)在結(jié)束會(huì)話時(shí)自動(dòng)清空
if (file_exists($_FILES['upload']['tmp_name']) && is_file($_FILES['upload']['tmp_name'])) {
unlink($_FILES['upload']['tmp_name']);
}
猜你喜歡
聯(lián)絡(luò)方式:
電話:18905275581
郵箱:1700970777@qq.com



-
為什么要做定制網(wǎng)站
1、提升企業(yè)形象與品牌價(jià)值:在互聯(lián)網(wǎng)時(shí)代,網(wǎng)站是企業(yè)的門面,是客戶了解企業(yè)的第*窗口。一個(gè)獨(dú)特且專業(yè)的定制網(wǎng)站能夠充分展現(xiàn)企業(yè)的形象和品牌價(jià)值,提升客戶對(duì)企業(yè)的信任度和好感度。通過定制網(wǎng)站,企業(yè)可以將自身的文化、理念和產(chǎn)品特色融入其中,形成獨(dú)特的...
-
被黑的網(wǎng)站應(yīng)該如何恢復(fù)權(quán)重
隨著互聯(lián)網(wǎng)行業(yè)的發(fā)展,一些黑色產(chǎn)業(yè)也在誕生,有些不法分子利用網(wǎng)站漏洞入侵別人服務(wù)器,篡改網(wǎng)站內(nèi)容或者掛上自己的黑鏈,相信很多站長的網(wǎng)站都被黑過,一旦不能及時(shí)發(fā)現(xiàn)很容易被搜索引擎降權(quán)。 網(wǎng)站被黑,一方面可能...
-
PHP 目錄遍歷
目錄遍歷: 1 傳統(tǒng)過程函數(shù):opendir(),readdir(),closedir() 2 目錄掃描器:scandir() 傳統(tǒng)目錄函數(shù) 實(shí)例: $dir=opendir('../0822') or die('打開失敗...
-
HTML中出現(xiàn)亂碼的原因有哪些
1、比如網(wǎng)頁源代碼是gbk的編碼,而內(nèi)容中的中文字是utf-8編碼的,揚(yáng)州網(wǎng)站建設(shè)這樣瀏覽器打開即會(huì)出現(xiàn)html亂碼。反之網(wǎng)頁是編碼utf-8,內(nèi)容是gbk也會(huì)出現(xiàn)亂碼。 2、html網(wǎng)頁編碼是gbk,而程序從數(shù)據(jù)庫中調(diào)出呈現(xiàn)是u...
-
網(wǎng)站建設(shè)好后要關(guān)注的問題
1.網(wǎng)站打開速度 網(wǎng)站建設(shè)好之后打開速度一定要快,一般要在2秒內(nèi)打開網(wǎng)站,網(wǎng)站打開慢了,用戶就會(huì)關(guān)閉網(wǎng)站走了,還會(huì)影響網(wǎng)站宣傳推廣,所以在做網(wǎng)站時(shí),空間服務(wù)器配置要選擇好,網(wǎng)站安全性要高。 2.網(wǎng)站...