使用 php 中的会话识别用户页面中的用户


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'];
?>

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