【问题标题】:PHP force download, Not working with variablesPHP强制下载,不使用变量
【发布时间】:2012-03-01 13:16:31
【问题描述】:

什么时候

header('Content-disposition: attachment; filename=1330554893-COVER.jpg');
header('Content-type: jpeg');
readfile('watermarked/1330554893-COVER.jpg');

在文件中运行,例如“testdownload.php”它下载图像

“加水印/1330554893-COVER.jpg”

并命名

“1330554893-COVER.jpg”

但是当我尝试使代码动态下载不同的文件时。

header("Content-disposition: attachment; filename={$newFileName}");
header("Content-type: jpeg");
readfile("{$findFile}");

在哪里 $newFileName = "1330554893-COVER.jpg" 和 $findFile = "watermarked/1330554893-COVER.jpg"

它下载了图像“1330554893-COVER.jpg”,但无法打开,并且出现错误“Windows 照片查看器无法打开此图片,因为照片查看器不支持此文件格式”

感谢您的帮助:)

【问题讨论】:

  • 尝试 echo file_get_contents($findfile);第一的。可能是路径或权限问题。
  • 请尝试readfile($findFile)
  • @silly readfile($findFile) 创建同样的错误
  • @Eduard7 我做了回声,它创建了我认为是图像的随机符号。是的。当我做echo file_get_contents($findFile); header("Content-type: jpeg"); 它显示图像

标签: php image header force-download


【解决方案1】:

那么,Allrite,不要使用 readfile(),在 headers 之后尝试 echo file_get_contents!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-21
    • 1970-01-01
    • 1970-01-01
    • 2014-04-09
    • 2012-08-04
    • 2011-06-16
    • 2010-11-03
    • 2010-11-30
    相关资源
    最近更新 更多