簡體   English   中英

PHP-如何在登錄后獲取正確的名字和姓氏?

[英]PHP - How to get correct first_name and last_name after login?

所以我想做的是從數據庫中獲取first_namelast_name ,以便我可以在他們登錄時顯示它們。 但它不能正常工作。 我想我知道它無法正常工作的原因,但我不確定我是否確實需要答案

碼:

if (isset($_POST['logged'])) {
        $myusername = stripslashes($myusername);
        $mypassword = stripslashes($mypassword);
        $myusername = mysql_real_escape_string($myusername);
        $mypassword = mysql_real_escape_string($mypassword);
        $sql = "SELECT * FROM members WHERE username='$myusername'";
        $result = mysql_query($sql);

        $count = mysql_num_rows($result);

        if (!empty($myusername) && !empty($mypassword)) {
            if($count == 1) {
                if (md5($mypassword) == $row['password']) {
                    $row = mysql_fetch_array($rs);
                    $_SESSION['username'] = $myusername;
                    $_SESSION['first_name'] = $row['first_name'];
                    $_SESSION['last_name'] = $row['last_name'];
                    $_SESSION['email'] = $row['email'];
                    $_SESSION['loggedIn'] = true;
                }
                else {
                    echo "<p style=\"color: red\">Wrong Password</p>";
                }
            }
            else {
                echo "<p style=\"color: red\">Wrong Username</p>";
            }
        }
        else {
            echo "<p style=\"color: red\">Fill in all fields</p>";
        }
    }

這是數據庫:

SQL數據庫

我認為這是因為$row變量僅選擇表中的第一行。 有人知道怎么修這個東西嗎?

提前致謝。

實際上,您放錯了一行代碼。

if (isset($_POST['logged'])) {
    $myusername = stripslashes($myusername);
    $mypassword = stripslashes($mypassword);
    $myusername = mysql_real_escape_string($myusername);
    $mypassword = mysql_real_escape_string($mypassword);
    $sql = "SELECT * FROM members WHERE username='$myusername'";
    $result = mysql_query($sql);

    $count = mysql_num_rows($result);

    if (!empty($myusername) && !empty($mypassword)) {
        if($count == 1) {
            $row = mysql_fetch_array($rs); //Need to put it here
            if (md5($mypassword) == $row['password']) {
                $_SESSION['username'] = $myusername;
                $_SESSION['first_name'] = $row['first_name'];
                $_SESSION['last_name'] = $row['last_name'];
                $_SESSION['email'] = $row['email'];
                $_SESSION['loggedIn'] = true;
            }
            else {
                echo "<p style=\"color: red\">Wrong Password</p>";
            }
        }
        else {
            echo "<p style=\"color: red\">Wrong Username</p>";
        }
    }
    else {
        echo "<p style=\"color: red\">Fill in all fields</p>";
    }
}

祝好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM