转发到新的php页面

时间:2013-03-02 12:25:51

标签: php

我有以下代码将某人记录到我的页面中 - 我想弄清楚的是如何调整它以便一旦它确认它们是一个很好的登录,它就会将它们转发到另一个页面。 / p>

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;

1 个答案:

答案 0 :(得分:1)

您需要使用header功能。可以在此处找到文档:http://php.net/manual/de/function.header.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,因为这会导致header失败。