繁体   English   中英

用php中的Session识别用户页面中的用户

[英]Recognizing users in user page with Sessions in php

希望对这个委员会来说这是一个简单的问题。 另外,请记住,我是初学者。 因此,如果我缺少重要的步骤,请告诉我。

我要做的是将用户页面设置为在用户在登录页面上输入后识别用户的电子邮件。 如您所见,我正在使用FatCow托管,并编辑了我的密码/用户名和任何其他个人数据。 这是我的代码,非常感谢您的帮助:

登录页面:

<?php

if(isset($_REQUEST['submitted'])) {

    $email = $_POST['email'];
    $password = $_POST['password'];

    $link = mysql_connect('root.fatcowmysql.com', 'username', 'password'); 
    if (!$link) { 
        die('Could not connect: ' . mysql_error()); 
    } 

    if ($email&&$password) 
    { 
        mysql_select_db(lcmembership); 

        $query = mysql_query("SELECT * FROM users WHERE email='$email' && password='$password'");

        $numrows = mysql_num_rows($query);

        if($numrows !=0)
        {
            session_save_path('/home/users/web/b2582/username/phpsessions'); 
            session_start();
            $_SESSION['users'] = "test";
            header("location: users.php");
        }
        else
            echo ("<p style='position: absolute; left: 500px; top: 150px; font-family: arial;color: white; background-color: #F1433F; border-radius: 10px; padding: 10px;'>That email address doesn't exist in our records. </p>");
        }
    } 
    else
    {
        echo ("<p style='position: absolute; left: 500px; top: 150px; font-family: arial;color: white; background-color: #F1433F; border-radius: 10px; padding: 10px; '>Incorrect Password. </p>");
    }
}
?>
<html>Form here with Action="" and Method="Post"</html>

用户页面:

<?php
session_start();
echo $_SESSION['users'];
?>

如果像您一样设置自定义session_save_path(),那么还需要在其他页面上调用它。 该方法既是获取器,也是设置器。

因此,在您的用户页面上,您需要以下内容:

<?php
    session_save_path(); // Get session path
    session_start(); // Resume session
    echo $_SESSION['users'];
?>

另外,您需要更正else逻辑。 一个if链中有两个else语句。 如果是第一个,则需要执行其他操作,然后最后可以使用else进行默认设置。 就我个人而言,尽管我会在代码中进一步提高电子邮件和密码的逻辑。 由于您的MySQL查询仅在查找匹配的记录,因此现在拥有它是多余的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM