PIXNET Logo登入

碎碎念

跳到主文

murmur

部落格全站分類:財經政論

  • 相簿
  • 部落格
  • 留言
  • 名片
  • 10月 06 週三 201016:11
  • [轉] php - file upload

http://www.tizag.com/phpT/fileupload.php
要在FORM加上enctype="multipart/form-data"
--
(繼續閱讀...)
文章標籤

dizzy03 發表在 痞客邦 留言(0) 人氣(0)

  • 個人分類:Murmur
▲top
  • 9月 28 週二 201000:13
  • [初音] 【パンツ検証?】アンダーザスカート暫定版【Project DIVA 2nd】


【パンツ検証?】アンダーザスカート暫定版【Project DIVA 2nd】
http://www.nicovideo.jp/watch/sm11566147
(繼續閱讀...)
文章標籤

dizzy03 發表在 痞客邦 留言(0) 人氣(2)

  • 個人分類:Murmur
▲top
  • 9月 27 週一 201011:52
  • 看DB LOG的路徑

看DB LOG
先連到m1
/home/log/pgsql/tag-db/2010/pgsql-(接日期)
開啟某天的LOG檔
(繼續閱讀...)
文章標籤

dizzy03 發表在 痞客邦 留言(0) 人氣(17)

  • 個人分類:Programming
▲top
  • 9月 27 週一 201011:50
  • [轉][PHP] 檔案下載與讀檔

http://blog.xuite.net/chihho32/blog/18147806
--

[PHP 檔案下載]


參考網址   http://blog.roodo.com/jaceju/archives/805389.html


用以下的方式,可以讓大部份瀏覽器 (主要是 IE) 詢問你是否要下載檔案 (而不是直接開啟) 。


 $file_name = "file.name";
 $
file_path = "/path/to/realfile";
 $
file_size = filesize($file_path);
 header('Pragma: public');
 header('Expires: 0');
 header('Last-Modified: ' . gmdate('D, d M Y H:i ') . ' GMT');
 header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
 header('Cache-Control: private', false);
 header('Content-Type: application/octet-stream');
 header('Content-Length: ' . $
file_size);
 header('Content-Disposition: attachment; filename="' . $
file_name . '";');
 header('Content-Transfer-Encoding: binary');
 readfile($
file_path);
?>


 


 


 


[PHP 讀大檔]


$fp = fopen("sn.txt", "r");
while (!feof($fp)) {
   $content. = fgets($fp);
}


 


 


[php寫入成 excel檔, 並可從網頁下載]


  header("Content-Disposition:filename=myfile.xls");
 header("Content-type:application/vnd.ms-excel");
 $content = "a \t b\t c\t d\n";
 $content .= "e \t f\t g\t h\n";
 echo $content;
?>


(繼續閱讀...)
文章標籤

dizzy03 發表在 痞客邦 留言(0) 人氣(0)

  • 個人分類:Programming
▲top
  • 9月 24 週五 201018:13
  • m1連到其他SERVER的寫法

ssh root@SERVER ip
(繼續閱讀...)
文章標籤

dizzy03 發表在 痞客邦 留言(0) 人氣(0)

  • 個人分類:Murmur
▲top
  • 9月 24 週五 201015:13
  • [PHP] [轉]利用header做檔案下載控制

http://tw.myblog.yahoo.com/cochiachang/article?mid=72&sc=1
--

利用header做檔案下載控制




分類:PHP

2009/01/08 21:06



在許多線上電影或許多軟體下載的網站,
都可以看到一個連結讓你點此下載,而無法讓你直接利用網址連接至被下載的檔案
這可以防止外站直接將檔案下載的連結連到你的站。
增加自己網站的負荷量卻沒增加人氣。


要達到這樣的功能,有幾種方式:
1. 利用php來存取控管檔案,所有的下載皆經過php檔案去處理。
2. 將檔案以BLOB的方式存進資料庫,以資料庫方式下載吐出檔案。


但是將檔案存進資料庫的話,在修改檔案內容、存取檔案上都將會較為不便
較為簡單的方式,是利用header去做檔案控制與下載的動作,
相關的詳細介紹可見: http://tw.php.net/header


下面的函數可以讓下載的檔案經由php處理再交由使用者下載,
我們可以將檔案放在伺服器主機上無法直接經由http存取的位置,
再利用php程式去存取本機電腦檔案。


這樣使用者便無法直接由網址來存取下載的檔案。









function dl_file($file){


   //檢查檔案是否存在
   if (!is_file($file)) { die("404 File not found!"); }


   //取得檔案相關資料
   $len = filesize($file);
   $filename = basename($file);
   $file_extension = strtolower(substr(strrchr($filename,"."),1));


   //將檔案格式設定為將要下載的檔案
  switch( $file_extension ) {
     case "pdf": $ctype="application/pdf"; break;
     case "exe": $ctype="application/octet-stream"; break;
     case "zip": $ctype="application/zip"; break;
     case "doc": $ctype="application/msword"; break;
     case "xls": $ctype="application/vnd.ms-excel"; break;
     case "ppt": $ctype="application/vnd.ms-powerpoint"; break;
     case "gif": $ctype="image/gif"; break;
     case "png": $ctype="image/png"; break;
     case "jpeg":
     case "jpg": $ctype="image/jpg"; break;
     case "mp3": $ctype="audio/mpeg"; break;
     case "wav": $ctype="audio/x-wav"; break;
     case "mpeg":
     case "mpg":
     case "mpe": $ctype="video/mpeg"; break;
     case "mov": $ctype="video/quicktime"; break;
     case "avi": $ctype="video/x-msvideo"; break;
     //禁止下面幾種類型的檔案被下載
     case "php":
     case "htm":
     case "html":
     case "txt": die("Cannot be used for ". $file_extension ." files!"); break;


     default: $ctype="application/force-download";
   }


   //開始編寫header
   header("Pragma: public");
   header("Expires: 0");
   header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
   header("Cache-Control: public");
   header("Content-Description: File Transfer");
   
   //使用利用 switch判別的檔案類型
   header("Content-Type: $ctype");


   //執行下載動作
   $header="Content-Disposition: attachment; filename=".$filename.";";
   header($header );
   header("Content-Transfer-Encoding: binary");
   header("Content-Length: ".$len);
   @readfile($file);
   exit;
}



若您只是單純的要下載某個檔案,不需要用到上面那麼複雜的php類別,
可以直接使用下面的程式碼去下載檔案








$saveasname = "test.csv"; //要被儲存成的檔名
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; Filename="'.$saveasname.'"');

上面的程式碼丟在 script 的前面送出 header 後
後面再將要存入的內容 echo 出來
瀏覽器自動會出現下載的功能...

 


如果想加快下載速度,可將Content-Encoding宣告為Gzip,
將檔案內容先壓縮過再提供給使用者下載,
這個非常適合用來做資料庫備份,
phpMyAdmin就是用這個方式來做資料庫備份的輸出輸入下載
檔案可以不用先存到伺服器端直接下載至客戶端,
增加執行的速度


 








//檔名
$saveasname = "test.txt.gz";
//Header設定
header('Content-Encoding:x-gzip');
header('Content-Type: application/x-gzip');
header('Content-Disposition: attachment; Filename="'.$saveasname.'"');
header('Pragma: no-cache');
//要輸出的內容用gzencode函式處理過
echo gzencode('hi', 9);

以下是關於GZIP的介紹
http://www.faqs.org/rfcs/rfc2616



(繼續閱讀...)
文章標籤

dizzy03 發表在 痞客邦 留言(0) 人氣(2)

  • 個人分類:Murmur
▲top
  • 9月 24 週五 201014:38
  • 三字經硬筆書法

http://www.dfg.cn/big5/djjsh/sanzijingyb/sanzijingyb.htm
http://www.books.com.tw/exep/prod/booksfile.php?item=0010407052
http://www.books.com.tw/exep/prod/booksfile.php?item=0010369251
(繼續閱讀...)
文章標籤

dizzy03 發表在 痞客邦 留言(0) 人氣(0)

  • 個人分類:Murmur
▲top
  • 9月 22 週三 201004:51
  • iTunes:同步通訊錄聯絡人與您的 Google 聯絡人

http://support.apple.com/kb/HT1245?viewlocale=zh_TW&locale=zh_TW
 
(繼續閱讀...)
文章標籤

dizzy03 發表在 痞客邦 留言(0) 人氣(0)

  • 個人分類:Murmur
▲top
  • 9月 21 週二 201014:37
  • 巨匠旅遊-日本專區

http://www.artisan.com.tw/exh/exhibition.aspx?area_no=13
 
(繼續閱讀...)
文章標籤

dizzy03 發表在 痞客邦 留言(0) 人氣(3)

  • 個人分類:Murmur
▲top
  • 9月 21 週二 201014:37
  • 巨匠旅遊-日本專區

http://www.artisan.com.tw/exh/exhibition.aspx?area_no=13
--
347 787 167
7 0 8 6
(繼續閱讀...)
文章標籤

dizzy03 發表在 痞客邦 留言(0) 人氣(0)

  • 個人分類:Murmur
▲top
«1...112113114130»

熱門文章

  • (59)Ggfff
  • (231)[轉] 台鐵火車座位配置,讓你拿到票就知道靠窗還是靠道
  • (19)[轉][秘技] DIY修理滑鼠點一下變成點兩下
  • (892)[Windows] 視窗最大化後發生視窗頂部或最下方出現黑色/白色/灰色空間
  • (405)[轉] 5 個免費 Bilibili 影片下載免安装線上工具推薦!
  • (533)國光號 中興號座位表
  • (512)[Word] Word「第幾頁,共幾頁」選項怎麼不見了? 其實在這裡啦~~
  • (410)[Windows] 如何將iCloud 照片 預設資料夾位置從C槽改為D槽
  • (117)[Windows] (解決)請問win10怎麼刪除微軟注音輸入法的『全形』只要『半形』
  • (64)[PhpSpreadsheet] PhpSpreadsheet設定儲存格框線樣式 Styling cell borders with PhpSpreadsheet PHP

文章精選

文章搜尋

文章分類

  • 旅遊 (3)
  • AI (2)
  • pixnet (1)
  • 騎士公主 (2)
  • 幹!MafiaWars (14)
  • 神馬三國 (39)
  • DSLR (15)
  • News (9)
  • Finance (65)
  • Estate (4)
  • Windows (78)
  • Programming (481)
  • Nihongo (18)
  • Murmur (176)
  • Application (87)
  • 3C (31)
  • Health (65)
  • ACG (73)
  • Life (111)
  • 未分類文章 (1)

最新文章

  • [轉] 3M WP4000 即淨高效濾水壺,第2代大升級!!3道過濾、1.4公升加大過濾容量、無須更換電池!
  • 健康存摺APP如何看X光片?
  • X.com 網頁版卡住錯誤排除
  • [AI] 物理小問題
  • [轉] 短期交易是零和賽局
  • [AI] 受管理的泡沫
  • [AI] 血壓計的原理
  • [AI] grok image有辦法查找產圖的歷史紀錄嗎? 包含提示詞
  • [轉] 關於在高山上失溫,27個您一定要知道的重點
  • 王永慶 山老鼠爭議?

參觀人氣

  • 本日人氣:
  • 累積人氣:

GoogleAdsense