PHP ini 显示错误

发布于 2024-10-09 12:20:37 字数 2248 浏览 5 评论 0原文

我之前发布了一个关于此问题的问题,但需要更多帮助,因为我已经缩小了问题范围。下面是我正在使用的代码。我收到两个错误,我也包含了这些行,但我不知道问题是什么,我是新人,请帮忙!

代码:

//Checks if there is a login cookie

if(isset($_COOKIE['ID_my_site']))
    //if there is, it logs you in and directes you to the members page
{ 
    $email = $_COOKIE['ID_my_site']; 
    $pass = $_COOKIE['Key_my_site'];
    $check = mysql_query("SELECT * FROM users WHERE email = '$email'") or die(mysql_error());

    while($info = mysql_fetch_array( $check )) 
    {
        if ($pass != $info['password']) 
        {
        }
        else
        {
            header("Location: home.php");
        }
    }
}

//if the login form is submitted 

if (isset($_POST['submit']))
{ // if form has been submitted
  // makes sure they filled it in

    if(!$_POST['email'] | !$_POST['password'])
    {
        die('You did not fill in a required field.');
    }

// checks it against the database

    if (!get_magic_quotes_gpc())
    {
        $_POST['email'] = addslashes($_POST['email']);
    }

    $check = mysql_query("SELECT * FROM users WHERE email = '".$_POST['email']."'") or die(mysql_error());

    //Gives error if user dosen't exist

    $check2 = mysql_num_rows($check);

    if ($check2 == 0)
    {
        die('That user does not exist in our database. <a href=add.php>Click Here to Register</a>');
    }

    while($info = mysql_fetch_array( $check ))  
    {
        $_POST['password'] = md5($_POST['password']);
        $_POST['password'] = $_POST['password'];

        //gives error if the password is wrong

        if ($_POST['password'] != $info['password'])
        {
            die('Incorrect password, please try again');
        }
        else 
        { 
            // if login is ok then we add a cookie 
            $_POST['email'] = stripslashes($_POST['email']); 
            $hour = time() + 3600; 
            setcookie(ID_my_site, $_POST['email'], $hour); 
            setcookie(Key_my_site, $_POST['password'], $hour);   

            //then redirect them to the members area 

            header("Location: home.php"); 
        } 

    } 

} 
else 
{    
Error # 1:  
    if ($pass != $info['password']) 
Error # 2: 
    if ($_POST['password'] != $info['password']) {

I posted a question about this earlier, but need more help with this as i have narrowed the problem down. Below is the code i am using. I am getting two errors, i have also included the lines, but i don't know what the issue is, i am new, please help!

The Code:

//Checks if there is a login cookie

if(isset($_COOKIE['ID_my_site']))
    //if there is, it logs you in and directes you to the members page
{ 
    $email = $_COOKIE['ID_my_site']; 
    $pass = $_COOKIE['Key_my_site'];
    $check = mysql_query("SELECT * FROM users WHERE email = '$email'") or die(mysql_error());

    while($info = mysql_fetch_array( $check )) 
    {
        if ($pass != $info['password']) 
        {
        }
        else
        {
            header("Location: home.php");
        }
    }
}

//if the login form is submitted 

if (isset($_POST['submit']))
{ // if form has been submitted
  // makes sure they filled it in

    if(!$_POST['email'] | !$_POST['password'])
    {
        die('You did not fill in a required field.');
    }

// checks it against the database

    if (!get_magic_quotes_gpc())
    {
        $_POST['email'] = addslashes($_POST['email']);
    }

    $check = mysql_query("SELECT * FROM users WHERE email = '".$_POST['email']."'") or die(mysql_error());

    //Gives error if user dosen't exist

    $check2 = mysql_num_rows($check);

    if ($check2 == 0)
    {
        die('That user does not exist in our database. <a href=add.php>Click Here to Register</a>');
    }

    while($info = mysql_fetch_array( $check ))  
    {
        $_POST['password'] = md5($_POST['password']);
        $_POST['password'] = $_POST['password'];

        //gives error if the password is wrong

        if ($_POST['password'] != $info['password'])
        {
            die('Incorrect password, please try again');
        }
        else 
        { 
            // if login is ok then we add a cookie 
            $_POST['email'] = stripslashes($_POST['email']); 
            $hour = time() + 3600; 
            setcookie(ID_my_site, $_POST['email'], $hour); 
            setcookie(Key_my_site, $_POST['password'], $hour);   

            //then redirect them to the members area 

            header("Location: home.php"); 
        } 

    } 

} 
else 
{    
Error # 1:  
    if ($pass != $info['password']) 
Error # 2: 
    if ($_POST['password'] != $info['password']) {

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

有深☉意 2024-10-16 12:20:37

通常,您需要在尝试访问索引之前测试索引...

类似

if ((isset($info['password'])) && $info['password'] != $pass) 

OR(尽管通常被轻视)之类的东西会抑制错误

if (@ $info['password'] != $pass) 

Typically you need to test the index before you try to access it ...

Something like

if ((isset($info['password'])) && $info['password'] != $pass) 

OR (though typically looked down upon) suppress the error

if (@ $info['password'] != $pass) 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文