下载png格式的图片,弹出来php文件格式的下载,求解决

WBOY
Release: 2016-06-23 13:37:27
Original
1035 people have browsed it

function down_file($file_name,$file_path){
   @$file_name=iconv("utf_8","gb2312",$file_name);
   $file_path=$_SERVER['DOCUMENT_ROOT'].$file_path.$file_name;
   if(!file_exists($file_path)){
      echo "文件不存在";
  return;
   }
   $fp=fopen($file_path,"r+");
   $file_size=filesize($file_path);
header("Content-type: application/octet-stream");
header("Accept-Rangers: bytes");
header("Accept-Length: $file_size");
header("Content-Dispostion: attachment;filename=".$file_name);
   while(!feof($file_path)){
     $data=fread($fp,1024);
     echo $data;
   }
   fclose($fp);
}

down_file("php.png","/down/");
?>


回复讨论(解决方案)

加个下载类型试试  header("content-type: image/png"); 

同1#

header("Content-Dispostion: attachment;filename=". $file_name);
这个是带路径的了吧
header("Content-Dispostion: attachment;filename=". basename($file_name));
这样才行




谢谢三位   你们说的 都对

1?和2??位。。。
加header("content-type: image/png"); ?有用的,因?是下?,不是?示?片。
首先,你的code根本就不能?行,有????了。

@$file_name=iconv(" utf_8","gb2312",$file_name);  ??是UTF-8
while(!feof( $file_path)){  ??是$fp
header("Content- Dispostion: attachment;filename=".$file_name);  ??是 disposition

改成??就可以了。

function down_file($file_name,$file_path){	@$file_name=iconv("utf-8","gb2312",$file_name);	$file_path=$_SERVER['DOCUMENT_ROOT'].$file_path.$file_name;	if(!file_exists($file_path)){		echo "文件不存在";		return;	}	$fp=fopen($file_path,"r+");	$file_size=filesize($file_path);	header("Content-type: application/octet-stream");	header("Accept-Rangers: bytes");	header("Accept-Length: $file_size");	header("Content-Disposition: attachment;filename=".$file_name);	while(!feof($fp)){		$data=fread($fp,1024);		echo $data;	}   fclose($fp);}down_file("php.png","/down/");
Copy after login

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template