所以有这个网页,这个人设法从服务器返回原始图像 只需输入id作为参数。
http://photos.iitm.ac.in/byid.php?id=008576
即使您右键单击图像并在新选项卡中打开,也只会打开php。 有谁知道他是如何做到这一点的? 我需要这种用于个人资料照片的功能
答案 0 :(得分:0)
非常简单。您只需使用正确的Content-type发送数据。因此,如果您想显示一个gif-image,请使用:
Header("Content-Type: image/gif");
然后发送图像数据。
答案 1 :(得分:0)
你可以这样做:
假设示例网址为:
http://www.example.com/getImage.php?id=20
因此,在getImage.php页面上从数据库获取用户图像信息并提供图像源:
代码应该是这样的:
$userImageName="testImage.gif"; //FROM DATABASE FOR id=20, Just for example
ob_clean(); //CLEAN THE OUTPUT BUFFER
header("Content-Type: image/gif"); //SET PAGE HEADER FOR IMAGE
echo file_get_contents('imageDirectory/'.$userImageName);
die;
答案 2 :(得分:0)
虽然这不是问题的直接答案,但由于已经有其他人回答,我认为值得一提。
您还可以控制尝试保存图片时显示的文件名!为此,请使用以下标题:
header('Content-Disposition', 'inline;filename=my_image_title.jpg');
以便您的脚本如下所示:
header('Content-Disposition: inline;filename=my_image_title.jpg');
header('Content-Type: image/jpeg');
readfile($pathToImage);
//or echo $imageContent
请确保在第一次拨打header()
之前没有意外输出任何内容,否则您可能会收到“已发送标头”错误。