转发到新的php页面

转发到新的php页面,php,Php,我有下面的代码,可以让某人登录到我的页面——我想弄清楚的是如何调整它,这样一旦它验证了他们是一个好的登录,它就会将他们转发到另一个页面 session_name('wpLogin'); // Starting the session session_set_cookie_params(2*7*24*60*60); // Making the cookie live for 2 weeks session_start(); if($_SESSION['id'] && !iss

我有下面的代码,可以让某人登录到我的页面——我想弄清楚的是如何调整它,这样一旦它验证了他们是一个好的登录,它就会将他们转发到另一个页面

session_name('wpLogin');
// Starting the session

session_set_cookie_params(2*7*24*60*60);
// Making the cookie live for 2 weeks

session_start();

if($_SESSION['id'] && !isset($_COOKIE['wpRemember']) && !$_SESSION['rememberMe'])
{
    // If you are logged in, but you don't have the wpRemember cookie (browser restart)
    // and you have not checked the rememberMe checkbox:

    $_SESSION = array();
    session_destroy();

    // Destroy the session
}


if(isset($_GET['logoff']))
{
    $_SESSION = array();
    session_destroy();

    header("Location: index.php");
    exit;
}

if($_POST['submit']=='Login')
{
    // Checking whether the Login form has been submitted

    $err = array();
    // Will hold our errors


    if(!$_POST['username'] || !$_POST['password'])
        $err[] = 'All the fields must be filled in!';

    if(!count($err))
    {
        $_POST['username'] = mysql_real_escape_string($_POST['username']);
        $_POST['password'] = mysql_real_escape_string($_POST['password']);
        $_POST['rememberMe'] = (int)$_POST['rememberMe'];

        // Escaping all input data

        $row = mysql_fetch_assoc(mysql_query("SELECT id,usr FROM tz_members WHERE usr='{$_POST['username']}' AND pass='".md5($_POST['password'])."'"));

        if($row['usr'])
        {
            // If everything is OK login

            $_SESSION['usr']=$row['usr'];
            $_SESSION['id'] = $row['id'];
            $_SESSION['rememberMe'] = $_POST['rememberMe'];

            // Store some data in the session

            setcookie('wpRemember',$_POST['rememberMe']);
        }
        else $err[]='Wrong username and/or password!';
    }

    if($err)
    $_SESSION['msg']['login-err'] = implode('<br />',$err);
    // Save the error messages in the session

    header("Location: index.php");
    exit;
session_name('wpLogin');
//开始会话
会话集cookie参数(2*7*24*60*60);
//让饼干活两周
会话_start();
如果($\u会话['id']&&&!isset($\u COOKIE['wpMembere'])&&&!$\u会话['rememberMe']))
{
//如果您已登录,但没有WPRememberCookie(浏览器重新启动)
//您还没有选中Memberme复选框:
$\会话=数组();
会话_destroy();
//销毁会话
}
如果(isset($_GET['logoff']))
{
$\会话=数组();
会话_destroy();
标题(“Location:index.php”);
出口
}
如果($_POST['submit']=='Login')
{
//检查登录表单是否已提交
$err=array();
//将保留我们的错误
如果(!$_POST['username']| |!$_POST['password']))
$err[]=“必须填写所有字段!”;
如果(!count($err))
{
$\u POST['username']=mysql\u real\u escape\u字符串($\u POST['username']);
$\u POST['password']=mysql\u real\u escape\u字符串($\u POST['password']);
$_POST['rememberMe']=(int)$_POST['rememberMe'];
//转义所有输入数据
$row=mysql\u fetch\u assoc(mysql\u查询(“从tz\u成员中选择id、usr,其中usr='{$\u POST['username']}'和pass='”).md5($\u POST['password'])。“”);
如果($row['usr']))
{
//如果一切正常,请登录
$\会话['usr']=$row['usr'];
$\会话['id']=$row['id'];
$_SESSION['rememberMe']=$_POST['rememberMe'];
//在会话中存储一些数据
setcookie('wpMembere',$_POST['rememberMe']);
}
else$err[]=“错误的用户名和/或密码!”;
}
如果($err)
$\会话['msg']['login-err']=内爆(“
,$err”); //在会话中保存错误消息 标题(“Location:index.php”); 出口
您需要使用
标题功能。文档可在此处找到:

简而言之,使用以下方法:

if($row['usr']) {
    // If everything is OK login

    $_SESSION['usr']=$row['usr'];
    $_SESSION['id'] = $row['id'];
    $_SESSION['rememberMe'] = $_POST['rememberMe'];

    // Store some data in the session

    setcookie('wpRemember',$_POST['rememberMe']);
    header("Location: index.php");
}
请记住,任何
header
函数只有在浏览器输出单个符号之前调用才能工作


这包括
echo
或PHP标记之外的任何内容。另外,请注意,源文件的格式中没有BOM表,因为这会导致
标题
也失败。

检查文档中的
标题
函数。如果我更改底部的标题,会不会更改页面的位置如果他们也输入了错误的用户/密码?这就是为什么我没有简单地更改标题。好吧,您需要做的就是使用
if
来“保护”它。请检查我的答案。如果登录失败,是否希望页面转到其他页面?