在这种情况下使用header()很好

时间:2012-01-24 18:19:18

标签: php

我的用户在我的网站上注册了一些电子邮件和密码。注册后,我们会立即向他的电子邮件发送确认码,并要求他输入要注册的号码。

不幸的是,用户可能会填写数据并且可能在今天注销而无需输入确认码,他可能会回到tomorow并使用他的注册电子邮件登录。所以我会检查他在数据库中的电子邮件,如果他已经注册,如果他的电子邮件是在批准发送到他的电子邮件的代码,那么我想将他重定向到一个页面,表明“已经发送到您的电子邮件的代码响应你的代码要注册“否则,如果他已经注册,并且没有待批准,那么将他重定向到他的个人资料。

我不确定如何做到这一点。我正在考虑使用这个:如果用户正在批准,那么header('location confirmation.php')如果他被批准,那么header('location profile.php')但我不确定这是否是正确的方法。标头可以用于此目的吗?或者做什么的替代解决方案。请帮助我,谢谢。

3 个答案:

答案 0 :(得分:0)

标头可用于涉及更改响应标头的任何目的。无论如何,您可以使用if语句设置一个Location标头(如果为true),否则设置另一个标头。请记住,正确的格式为header("Location: confirmation.php"); - 即大写L:

答案 1 :(得分:0)

是的,这是应该使用的位置标题。


Location: confirmation.php,您忘记了:

答案 2 :(得分:0)

是的,你可以这样做。请记住在更改位置后,在exit;所有来电之后添加header()来电,否则整个页面都会被处理并发送给客户端。这可能是一个很大的安全问题,具体取决于页面内容。