gpt4 book ai didi

javascript - PHP:单击按钮时下载图片并转到其他页面

转载 作者:行者123 更新时间:2023-12-03 07:56:29 24 4
gpt4 key购买 nike

我有 3 个页面 - 带按钮的原始页面、目标页面和使用 content-disposition 保存文件的下载页面 - 在其中我需要在通过按原始页面上的按钮即可下载文件。

重定向的流程应该类似于:

原始页面 -> [按钮点击] -> 下载文件 -> 重定向到目标页面

我希望用户只需按一下按钮即可下载文件并重定向。我尝试过按以下方式执行此操作,但没有成功:

为了处理图像的下载,我在下载文件上使用以下代码

<?php
header('Content-disposition: attachment; filename=calendar.jpg');
header('Content-type: image/jpeg ');
readfile($_POST['_img_src']);
?>

按下按钮时,它会将用户定向到下载页面并下载图像,但不会重定向到目标页面。添加 header('Location:/directory/mypage.php'); 后,由于 header 冲突,它会使下载无效,并且仅重定向到目标页面。

如果我将图像下载代码放在目标文件的开头,则下载会损坏并且内容不会加载。

非常感谢任何帮助!

编辑:要下载的图像已由用户创建并存储在服务器上。原始页面将图像的链接(通过 post 方法)发送到下载文件,因此我无法转到目标页面,然后重定向到下载文件,如 here 中所述。 。如果有一种方法可以通过 post 方法发送数据,同时自动重定向到下载文件。但我认为这会让问题变得更加复杂。

最佳答案

位置重定向会向浏览器返回 302 重定向响应。文件下载会向浏览器返回 200 响应和文件内容。

您无法使用同一个请求执行这两项操作。

但是,您可以在新窗口中打开下载,然后使用 JS 重定向当前页面吗?在不错的浏览器中,在新窗口中打开下载,只是暂时打开一个新选项卡,然后在下载开始后将其关闭。

<a href="/download.php" target="_blank" id="button">Link</a>

<script>
$(document).ready(function () {
$('#button').click(function() {
window.location.href="/redirect";
});
});
</script>

关于javascript - PHP:单击按钮时下载图片并转到其他页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34777382/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com