我正在使用以下代码
<?php
$rFile = $_GET['sfile'];
$rExt = $_GET['ext'];
header("Content-disposition: attachment; filename=".urlencode( $_GET['sfile'] ).".".$_GET['ext']);
header('Content-type: Image/jpeg');
readfile( "wallpapers/".$rFILE.$rRes.$rExt );
?>
我传递变量并正在下载文件..但是没有创建图像..
该怎么做..我需要提供图像下载的直接链接......
答案 0 :(得分:1)
我敢打赌啤酒,336到337字节包含一条PHP错误信息,告诉你问题是什么。
删除JPEG内容类型标题以查看输出。
答案 1 :(得分:1)
第1行你想要$rFile
,第5行是$rFILE
- 也许这就是问题所在?如果没有,没有看到错误消息就不可能说。
答案 2 :(得分:1)
我希望您正在对$ _GET数据进行一些消毒,否则您会遇到比未正确下载的图像数据更大的问题。该代码适用于目录遍历攻击。
答案 3 :(得分:0)
好的,现在我做了这个
$rFile = $_GET['sfile'];
$rExt = $_GET['ext'];
header("Content-disposition: attachment; filename=".urlencode( $_GET['sfile'] ).".".$_GET['ext']);
header('Content-type: Image/jpeg');
readfile( "wallpapers/".urlencode($rFile).".".$rExt );
现在正在以正确的尺寸下载文件..但我仍然看不到预览..我的图像veiwers&amp;编辑们说这个
ACDsee 空白屏幕
Windows Page&amp;传真查看器无法预览
MS Paint 路径画图无法读取此文件这不是有效的位图文件。或者不支持其格式