久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

PHP文件下載代碼

 mrjbydd 2011-10-09

PHP文件下載代碼  

2008-07-18 11:37:48|  分類: php |  標(biāo)簽: |字號 訂閱

public function downloadfile(){                       //下載FTP中的一個文件     (已測試成功)
        $file_name = "root.php";
        $file_dir = $this->webdir;
        if (!file_exists($file_dir."/".$file_name)){ //檢查文件是否存在
         return false;
         exit;
        }else{
         $file = fopen($file_dir."/".$file_name,"r"); // 打開文件
         // 輸入文件標(biāo)簽
         header('Content-Encoding: none');
         header("Content-type: application/octet-stream");
         header("Accept-Ranges: bytes");
         header("Accept-Length: ".filesize($file_dir."/".$file_name));
         header( 'Content-Transfer-Encoding: binary' );
         header("Content-Disposition: attachment; filename=" .$file_name); //以真實(shí)文件名提供給瀏覽器下載
         header('Pragma: no-cache');
         header('Expires: 0');
         //輸出文件內(nèi)容
         echo fread($file,filesize($file_dir."/".$file_name));
         fclose($file);
         exit;
        }
      }

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////

你一定會笑我"下載文件"如此簡單都值得說,?當(dāng)然并不是想象那么簡單。例如你希望客戶要填完一份表格,,才可以下載某一文件,,你第一個想法一定是用 "Redirect"的方法,先檢查表格是否已經(jīng)填寫完畢和完整,,然后就將網(wǎng)址指到該文件,,這樣客戶才能下載,但如果你想做一個關(guān)于"網(wǎng)上購物"的電子商務(wù)網(wǎng)站,,考慮安全問題,,你不想用戶直接復(fù)制網(wǎng)址下載該文件,筆者建議你使用PHP直接讀取該實(shí)際文件然后下載的方法去做,。程序如下:

$file_name = "info_check.exe";
$file_dir = "/public/www/download/";
if (!file_exists($file_dir . $file_name)) { //檢查文件是否存在
echo "文件找不到";
exit;
} else {
$file = fopen($file_dir . $file_name,"r"); // 打開文件
// 輸入文件標(biāo)簽
Header("Content-type: application/octet-stream");
Header("Accept-Ranges: bytes");
Header("Accept-Length: ".filesize($file_dir . $file_name));
Header("Content-Disposition: attachment; filename=" . $file_name);
// 輸出文件內(nèi)容
echo fread($file,filesize($file_dir . $file_name));
fclose($file);
exit;}

而如果文件路徑是"http" 或者 "ftp" 網(wǎng)址的話,,則源代碼會有少許改變,程序如下:

$file_name = "info_check.exe";
$file_dir = "http://www./";
$file = @ fopen($file_dir . $file_name,"r");
if (!$file) {
echo "文件找不到";
} else {
Header("Content-type: application/octet-stream");
Header("Content-Disposition: attachment; filename=" . $file_name);
while (!feof ($file)) {
echo fread($file,50000);
}
fclose ($file);
}

這樣就可以用PHP直接輸出文件了,。

<?
$file_name
= "0209.jpg"
;
$file_dir = "./download/"
;
if (!
file_exists($file_dir . $file_name)) {
//檢查文件是否存在
echo "文件找不到"
;
exit;
} else {
$file = fopen($file_dir . $file_name,"r");
// 打開文件
// 輸入文件標(biāo)簽
Header("Content-type: application/octet-stream"
);
Header("Accept-Ranges: bytes"
);
Header("Accept-Length: ".filesize($file_dir . $file_name
));
Header("Content-Disposition: attachment; filename=" . $file_name
);
// 輸出文件內(nèi)容
echo fread($file,filesize($file_dir . $file_name
));
fclose($file
);
exit;}


//////////////////////////////////////////////////////////////////////////////////////////////////////////////////

<?php
if (isset($file_name)){
$file_dir = DIR_FS_PRODUCTS."audit\speak\\";
if (!file_exists($file_dir . $file_name)) { //檢查文件是否存在
   zen_jump_page("你下載的文件沒找到!請聯(lián)系管理員!");
} else {
   //echo $add_log_tsql;
   $file = fopen($file_dir . $file_name,"r"); // 打開文件
   // 輸入文件標(biāo)簽
   Header("Content-type: application/octet-stream");
   Header("Accept-Ranges: bytes");
   Header("Accept-Length: ".filesize($file_dir . $file_name));
   Header("Content-Disposition: attachment; filename=" . $file_name);
   // 輸出文件內(nèi)容
   echo fread($file,filesize($file_dir . $file_name));
   if(fclose($file)){
    $c_ipaddr=$_SERVER['REMOTE_ADDR'];
    $add_log_tsql="insert into sp_fdownload_log (dl_dfilename,dl_duser,dl_pr_seq,dl_dtype,dl_module,dl_dipaddr,dl_createtime) values ('".$file_name."','".$park_userid."',".$prod_seq.",".$dtype.",'".$park_support."','".$c_ipaddr."',now())";
    $add_log=$db->execute($add_log_tsql);
    $end_download_tsql="update sp_fdownload set fd_used_times=fd_used_times+1 where   fd_id=".$fd_id." and fd_userid=".$park_userid;
    $end_download_query=$db->execute($end_download_tsql);
    $update_prod_tsql="update sp_products set pr_download_times=pr_download_times+1 where pr_seq=".$prod_seq;
    $update_prod=$db->execute($update_prod_tsql);
   }
}
}else{
zen_jump_page("沒有你要下載的文件!");
}
?>

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多