PHP, 網頁設計

PHP教學-強制下載JPG與各種的檔案格式

梅干 2009/11/24
梅問題-php教學-php強制下載JPG與各種的檔案格式
  很早之前曾分享過,利用aspx強制下載任何的檔案格式,包含jpg、gif、doc....等,由於瀏覽器的限制,使得每當如圖檔、文件檔,則會被自動的開啟,若希望讓網友點了之後,可直接儲存,而不要開啟它,這時就得透過一些Server端的程式語言來解決,因此今天要為各位來介紹,利用php製作強制下載任何的影像格式與各種的檔案格式。

download.php
<?php
if($_GET['f']!=null){
	$file=$_GET['f'];//檔案名稱
	$url="http://ds.minwt.com.tw/file/sampleView/php/download/"; //路徑位置
	$num=date("Ymds");	
	header("Content-type:application");
	header("Content-Disposition: attachment; filename=".$num.$file);	
	readfile($url.str_replace("@","",$file));	
	exit(0);
}else{
	echo "找不到相關檔案....";
}
?>

語法說明:
$file:檔案名稱
$url:檔案的存放路徑(可將檔案放置其它的路徑底下)

使用方法:
之後將download.php上傳到主機中,http://xxxx.xxx.xxx/download.php?f=檔案名稱
如:要http://localhost/download.php?f=123.gif

  哇喔!!想不到PHP更加的容易,從上方的語法中,可自行的設定檔案的存放路徑,如此一來就可防止被砍檔問題,可以把php放在A目錄,檔案則放在B、C甚至在其它的主機中,雖然此方法只能防君子,但至少多一道防護。
[範例預覽]