PHP 文件上傳功能實(shí)現(xiàn)代碼
更新時(shí)間:2009年06月24日 11:06:28 作者:
經(jīng)過(guò)了幾個(gè)小時(shí)的苦苦搜索,終于把這個(gè)問(wèn)題給解決了.
php文件上傳對(duì)于高手來(lái)說(shuō)確實(shí)是小菜,可是對(duì)我新手來(lái)說(shuō)就顯得手足無(wú)措了.
個(gè)人認(rèn)為PHP文件的上傳和下載的思路差不多一樣.也就是在代碼中多了一個(gè)header語(yǔ)句
以下是詳細(xì)的代碼.僅供參考.
入口文件
<html>
<body>
<form action="download.php" method="GET"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="FileName" id="Fileid" value="<?php echo $_FILES["file"]["name"];?>" />
<h1></h1>
<input type="submit" name="submit" value="download" />
</form>
</body>
</html>
php寫(xiě)的處理文件
<?php
if( empty($_GET['FileName'])){
echo'<script> alert("非法連接 !"); location.replace ("./fileload.html") </script>'; exit();
}
$file_name=$_GET['FileName'];//得到要下載的文件
if (!file_exists($file_name)) { //檢查文件是否存在
echo "文件找不到";
exit;
} else {
$file = fopen( $file_name,"r"); // 打開(kāi)文件
// 輸入文件標(biāo)簽
Header("Content-type: application/octet-stream");
//Header("Accept-Ranges: bytes");
//Header("Accept-Length: ".filesize( $file_name));
//Header("Content-Disposition: attachment; filename=" . $file_name);
// 輸出文件內(nèi)容
echo fread($file,filesize( $file_name));
fclose($file);
exit();
}
?>
以上代碼是自己在網(wǎng)上找的,可是都不很齊全.記過(guò)了一段時(shí)間的調(diào)試與修改.終于把功能實(shí)現(xiàn)了.由于太興奮了第一時(shí)間拿來(lái)和大家分享了.
以下是詳細(xì)的代碼.僅供參考.
入口文件
復(fù)制代碼 代碼如下:
<html>
<body>
<form action="download.php" method="GET"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="FileName" id="Fileid" value="<?php echo $_FILES["file"]["name"];?>" />
<h1></h1>
<input type="submit" name="submit" value="download" />
</form>
</body>
</html>
php寫(xiě)的處理文件
<?php
if( empty($_GET['FileName'])){
echo'<script> alert("非法連接 !"); location.replace ("./fileload.html") </script>'; exit();
}
$file_name=$_GET['FileName'];//得到要下載的文件
if (!file_exists($file_name)) { //檢查文件是否存在
echo "文件找不到";
exit;
} else {
$file = fopen( $file_name,"r"); // 打開(kāi)文件
// 輸入文件標(biāo)簽
Header("Content-type: application/octet-stream");
//Header("Accept-Ranges: bytes");
//Header("Accept-Length: ".filesize( $file_name));
//Header("Content-Disposition: attachment; filename=" . $file_name);
// 輸出文件內(nèi)容
echo fread($file,filesize( $file_name));
fclose($file);
exit();
}
?>
以上代碼是自己在網(wǎng)上找的,可是都不很齊全.記過(guò)了一段時(shí)間的調(diào)試與修改.終于把功能實(shí)現(xiàn)了.由于太興奮了第一時(shí)間拿來(lái)和大家分享了.
您可能感興趣的文章:
- 功能齊全的PHP發(fā)送郵件類代碼附詳細(xì)說(shuō)明
- ajax+php 谷歌搜索框自動(dòng)填充功能 實(shí)例代碼
- php 上傳功能實(shí)例代碼
- php利用iframe實(shí)現(xiàn)無(wú)刷新文件上傳功能的代碼
- 用PHP+MySQL搭建聊天室功能實(shí)例代碼
- php流量統(tǒng)計(jì)功能的實(shí)現(xiàn)代碼
- PHP實(shí)現(xiàn)下載功能的代碼
- php多文件上傳功能實(shí)現(xiàn)原理及代碼
- 8個(gè)必備的PHP功能實(shí)例代碼
- php編寫(xiě)的簡(jiǎn)單頁(yè)面跳轉(zhuǎn)功能實(shí)現(xiàn)代碼
- php實(shí)現(xiàn)文件下載功能的幾個(gè)代碼分享
- 分享10段PHP常用代碼
相關(guān)文章
php實(shí)現(xiàn)微信公眾平臺(tái)賬號(hào)自定義菜單類
這篇文章主要介紹了php實(shí)現(xiàn)微信公眾平臺(tái)賬號(hào)自定義菜單類的方法,涉及針對(duì)微信接口API的二次開(kāi)發(fā),是非常實(shí)用的技巧,需要的朋友可以參考下2014-12-12
基于php偽靜態(tài)的實(shí)現(xiàn)方法解析
這篇文章主要介紹了基于php偽靜態(tài)的實(shí)現(xiàn)方法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
用php+javascript實(shí)現(xiàn)二級(jí)級(jí)聯(lián)菜單的制作
二級(jí)級(jí)聯(lián)菜單在我去年的時(shí)候就用asp+js做過(guò),而現(xiàn)在忽然拿出來(lái)再做的時(shí)候我發(fā)現(xiàn)我忘記了,而且原來(lái)用asp寫(xiě)的程序都找不到了,真暈[emot]sweat[/emot],于是到網(wǎng)上搜,找了半天,我發(fā)現(xiàn)網(wǎng)上的寫(xiě)法各異,而且都特別復(fù)雜,這么一個(gè)二級(jí)級(jí)聯(lián)菜單,有必要弄這么復(fù)雜嗎?于是自己想重新寫(xiě)一個(gè)簡(jiǎn)單的。在經(jīng)過(guò)半個(gè)小時(shí)左右的思考后,我完成了二級(jí)級(jí)聯(lián)菜單的設(shè)計(jì)和制作。2008-05-05
php中使用array_filter()函數(shù)過(guò)濾數(shù)組實(shí)例講解
在本篇文章里小編給大家分享的是一篇關(guān)于php中使用array_filter()函數(shù)過(guò)濾數(shù)組實(shí)例講解,有興趣的朋友們可以學(xué)習(xí)下。2021-03-03
淺析HTTP消息頭網(wǎng)頁(yè)緩存控制以及header常用指令介紹
本篇文章是對(duì)HTTP消息頭網(wǎng)頁(yè)緩存控制以及header常用指令進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
幾款免費(fèi)開(kāi)源的不用數(shù)據(jù)庫(kù)的php的cms
下面的幾種內(nèi)容采集系統(tǒng)都是英文版的,全部不需使用數(shù)據(jù)庫(kù),都是國(guó)外的免費(fèi)并且開(kāi)源CMS。對(duì)中文支持如何,你自己試試吧!2010-12-12

