为了与朋友共享文件,我有一个简单的系统,可以在其中输入密码,该密码通过POST发送到self(action=""
),并根据数据库检查密码。如果正确,将下载相应的文件:
header('Content-Type: application/zip');
header('Content-Disposition: attachment; filename="'.$filename.'"');
header('Content-Length: '.filesize($filename) );
readfile($filename);
现在,当密码不正确时,我有一些错误警报(引导程序)(当然,文件下载会被跳过)。但是我也想在密码正确时显示警报。
但是当我尝试使用 php 添加 html 时,当我也更改标题并读取文件时,什么也没显示。
关于如何解决此问题的任何建议?谢谢!
(抱歉,我没有50声望,所以我必须发布答案)
您是否尝试使用 JavaScript 重定向到其他页面?在此页面上,您可以放置警报
对 HTTP 请求的响应是单个响应。每个 HTTP 请求只有一个响应。
响应可以是包含警报消息的 HTML 页面,也可以是下载,就像你已经这样做的那样。
用于实现此类功能的典型方法是返回包含消息的 HTML 响应;并在 <head>
元素中使用刷新指令,这会导致浏览器发出第二个请求,从而导致下载。