PHP重定向到包含Data的页面

| 好的,所以我有一个人们在我们的网站上使用它来下载软件应用程序。...实际上有4种不同的形式链接到相同的php脚本,我需要将它们全部重定向到带有$ _POST [\'application_to_download \']我遇到的问题是如何使用php标头发送此变量。这是我的代码 这将打开下载
header(\"location:\".$_POST[\'application_to_download\']);
效果很好,但是我需要将用户重定向到thank_you页面...所以我的第二种方法是尝试发布方法
$post_data = \"software={$_POST[\'application_to_download\']}\";
$content_length = strlen($post_data);

header(\'POST /downloads/thank_you HTTP/1.1\');
header(\'Host: localhost\');
header(\'Connection: close\');
header(\'Content-type: application/x-www-form-urlencoded\');
header(\'Content-length: \' . $content_length);
header(\'\');
header($post_data);
我不确定这种方法是怎么回事,但它根本没有重定向,最后我可以做到这一点
header(\"location:\"./downloads/thank_you?software=$_POST[\'application_to_download\']);
像这样,但网址看起来像这样
 http://somesite.com/downloads/thank_you?software=videovision10_1_07.exe
如果您问我,那不是最漂亮的....我的意思是我知道我可以做到这一点,但我一直在寻找替代方法。...顺便说一下,这就是为什么我在thank_you页面上需要它的原因
<title>Thank You</title>
</head>
<body onload=\"window.location = \'<?php print $_POST[\'software\']; ?>\'\">
有什么建议么     
已邀请:
        相反,我建议您重定向到“谢谢”页面,并使用元刷新来触发文件下载。
header(\'Location: /thank_you_page.php?redirectTo=\' . $_POST[\'app_to_dl\']);
在“谢谢”页面中:
echo \"<META HTTP-EQUIV=\\\"REFRESH\\\" CONTENT=\\\"1;URL=\" . $_GET[\'redirectTo\'] . \"\\\">\";
试一试.. 编辑:现在我看到您提到了GET变量...您真的认为人们正在查看您的URL并对其进行判断吗?     
        对于浏览器的每个请求,您都可以做出一个响应。您要显示一个谢谢页面。这样就用完了。这意味着“谢谢”页面必须自动触发浏览器再次发出请求。 您可以选择刷新Javascript:
window.onload = function() {
    location.href = \'<?php echo $app; ?>\';
}
或HTTP Meta刷新(此刷新向您展示了如何等待1秒):
<meta http-equiv=\"refresh\" content=\"1;<?php echo $app; ?>\">
为了让该页面知道ѭ9是什么并将其嵌入到页面中,您有两个选择: URL(GET)-您拥有的代码(很难看) 届会
session_start();
$_SESSION[\'app\'] = $_POST[\'application_to_download\'];
...
$app = $_SESSION[\'app\'];
unset($_SESSION[\'app\']);
    

要回复问题请先登录注册