2012-11-29 92 views
0

可能重复:
PHP login then redirect登录后如何重定向? PHP

我刚刚作出了一个PHP的登录页面。在输入他们的数据后,信息将被提交回发生验证的页面。

我只是不确定该操作完成后如何进入我的内容页面。

我是否使用仅在验证成功时才运行的require语句?

我读了SO类似的帖子和解决方案是:

public void redirect(mixed $url, boolean $terminate=true, integer $statusCode=302) 

但是我真的不知道什么IM应该放在哪里,以及这些方面的我真的进入与该条款是占位符值那我应该填充一些东西。也不知道是否可以使用像memberpage.php这样的相对URL来填充$ url。

一些澄清将不胜感激。

编辑: 等等...... public void ...是不是java术语?

+0

是的,公共无效是java或C(++,#)。 –

回答

3

成功登录,设置任何$_SESSION变量,你需要(如果适用),然后使用重定向:

header ("Location: mypage.php"); 

记住,你需要输出(回声)什么之前,发送这个头。

+0

谢谢!原因是因为它会覆盖我输出的任何内容,对吗? – user1787489

+0

原因是:一旦输出了某些东西,就不能发送标题。如果在发送标题之前有回显,可以使用页面顶部的ob_start()对其进行缓冲。 –

0

您可以尝试在头中添加重定向。代码将是这样的:

login_validator.php

validation code 
if(isvalid(login)){ 
    header('Location: loggedin/welcome.php'); 
}else{ 
    some other handler; 
} 
0

所以,如果我得到这个权利,你有一个用户输入信息,并点击提交 - 该表格然后发送到自身在那里你在顶部的PHP说像

<?PHP 
    if(isset($_POST[name]){ 
     //input everything 
    } 
?> 

如果这是真的,你可以把一条线,说是这样的:

header('Location: http://www.yoursite.com/new_page.html') ; 

里面,在前一个if语句的最底部。