Php函数来保存图像
例如,我的网站上有一些用于用户化身的图像 我想添加一个链接,允许用户下载头像图像,当有人点击链接时,应该会出现另存为对话框Php函数来保存图像,php,image,function,save,Php,Image,Function,Save,例如,我的网站上有一些用于用户化身的图像 我想添加一个链接,允许用户下载头像图像,当有人点击链接时,应该会出现另存为对话框 现在的问题是图片下载不正确,但出现了对话框,下面是链接和代码: <?php $username = $_GET['username']; $size = $_GET['size']; $ext = $_GET['ext']; $border = $_GET['border']; $basename = basename($_S
现在的问题是图片下载不正确,但出现了对话框,下面是链接和代码:
<?php
$username = $_GET['username'];
$size = $_GET['size'];
$ext = $_GET['ext'];
$border = $_GET['border'];
$basename = basename($_SERVER['REQUEST_URI']);
if(!isset($size)) { $size = 'small'; }
if(!isset($ext)) { $ext = 'jpeg'; }
if(!isset($border)) { $border = 'true'; }
$file = 'avatar-'.$size.'-'.$username.'.'.$ext;
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.$basename);
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
#header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
?>
您可以在php.net手册中查看示例#1: 它显示了如何强制下载图像 您可以将它放入一个脚本
image.php
,并像这样使用它
<a href="http://example.com/image.php?user=123">download avatar image</a>
您可以将它与$\u GET['user']
参数一起使用,以提供正确的用户图像文件
只需记住验证GET输入。当然,他们总是可以在图像上单击鼠标右键并“另存为”,通常一个头像链接会将您带到用户的个人资料页面。将其更改为“下载图像”会打破一开始就有一个化身的观点。我建议将其作为个人资料的链接,然后在个人资料页面上添加一个明确的“下载此图像”链接。@mark-b我知道,网站就是这样工作的,我想问的是如何创建“下载此图像”链接,以便在用户单击时显示另存为对话框。到目前为止,您做了哪些尝试?你有任何相关的代码,你有问题吗?我没有尝试任何东西,因为我没有找到任何帮助。1.例如,我有一张照片。2.我想在网站上放一个链接,比如“下载你的头像”,点击时会显示一个“另存为”对话框,比如当你试图下载一个文件,但有一个pictureThanks,这就是我要找的!!:D