2012-01-11 77 views
0

我想單擊圖像時打開保存圖像對話框。我設法打開它,但保存時,它不會保存打開保存的圖像,因爲圖像的內容不會以某種方式保存。Php圖像另存爲對話框

PHP代碼:

$imageName = $_GET['i']; 
$imageName = $imageName . '-HR.jpg'; 
header ("Content-Type: application/download"); 
header ("Content-Disposition: attachment; filename=$imageName"); 
header("Content-Length: " . filesize("$imageName")); 
$fp = fopen("$imageName", "r"); 
fpassthru($fp); 

的通過URL是一樣的東西: MYDOMAIN/download_image.php C =動脈粥樣硬化& I =栓子,頸動脈插圖

請提出的解決方案?謝謝。

+0

什麼都保存了?即使它不是一個有效的圖像?如果是這樣,什麼! – 2012-01-11 07:39:54

回答

2

使用下面的代碼添加這個頭也

header("Content-Type: application/force-download");

2

我好不容易纔這樣做的:

<?php 
$imageName = $_GET['i'];$imageName = $imageName . '-HR.jpg'; 
$imageCatName = $_GET['c']; 
$imageCatName = ucwords($imageCatName); 
$file_path = $docRoot . '/static/media/images/content/image_library/'.$imageCatName . '/'. $imageName; 
if(file_exists($file_path)) { 
header("Content-disposition: attachment; filename={$imageName}"); 
header('Content-type: application/octet-stream'); 
readfile($file_path); 
}else { 
echo "Sorry, the file does not exist!"; 
} 
?> 

還是非常感謝您的支持。 :)