如何打开发送POST数据的网页

时间:2013-04-19 12:19:24

标签: javascript jquery html redirect post

我有一个包含一些HTML代码的php页面。这是注册到网站的用户的确认页面,因此,我想仅在有效注册的情况下显示它(没有可能从外部访问它)。 为此,我已将此条件置于confirmation.php

的开头
if (empty($_POST))
{header('location: registration.php');} 

文件的其余部分是:

<div id="logo"> <img src=my_logo_small_grey.png  height="60"/> </div>
<div id="msgConfirm">Thank You</div>

(顺便说一句,这是一个很好的解决方案?)

但是从registration.php开始,如何启动/重定向到confirmation.php发送POST params?其实我用过AJAX:

url = "confirmation.php";
params = "ok"
ajaxReq.setRequestHeader("Content-length", params.length);
ajaxReq.open("POST", url, true); 

但似乎只执行脚本(思考),没有有效的重定向..为什么?

2 个答案:

答案 0 :(得分:0)

使用jQuery

$.post()将是实施解决方案的关键。


但更一般地看一下你的问题,通常,工作流程正在跟随

  1. 填写表格
  2. 发送电子邮件
  3. 用户点击电子邮件链接
  4. 确认页面已打开
  5. 检查哈希,验证用户
  6. 登录并重定向到成功页面
  7. 如果您确实需要隐藏对成功页面的访问权限,请创建一次性可用令牌。

    (!empty($_POST))不是限制访问该网站的“强大”方式。

答案 1 :(得分:0)

抱歉,我不完全理解这个问题,但我会帮忙。

首先,如果文件的其余部分很小,那么你可以把它放在if循环中。

<?php
if(isset($_POST['yourpost']))
{
?>

<div id="logo"> <img src=my_logo_small_grey.png  height="60"/> </div>
<div id="msgConfirm">Thank You</div>

<?php
}
?>

您还可以通过写下如下Javascript来创建重定向:

<?php
echo "<script>location.href='".$redirecturl."'</script>";    
?>

发布数据通常会发送到处理它的其他页面,然后您将转到另一个显示确认的页面。 这个数据可以通过再次从数据库中获取来检索。(如果你这样做)

如果您确实希望将检索到的POST数据传递到另一个页面,那么您可以将其作为GET变量添加到链接中,如www.url.com/index.php?get=something

您还可以将会话变量存储为$ _SESSION ['var'] =“something”; 记得启动session_start();在使用会话的php页面的开头。

抱歉,我不是那么有经验,所以也许其他人会提供更好的帮助,希望现在有所帮助。