1

user.php というファイルに次の関数があります。

        function user_id_from_username($username) {
            $username = sanitize($username);
            return mysql_result(mysql_query("SELECT `MemberID` FROM `member` WHERE `Email` = '$username'"),0, 'MemberID');

            }
        function login ($username, $password) {
            $MemberID = user_id_from_username ($username);

            $username = sanitize($username);
            $password = md5($password);

            return (mysql_result(mysql_query("SELECT COUNT(`MemberID`) FROM `member` WHERE `Email` = '$username' AND `Password` ='$password'"), 0) == 1) ? $MemberID : false; }

そして私のlogin.phpには次のものがあります:

Session_start ();
include 'core/functions/users.php'

if (empty($_POST) === false){
    $username = $_POST['Email'];
    $password = $_POST['Password'];


        $login = login($username, $password);
        if($login === 1){
            $_SESSION['MemberID'] = $login; //logged in and returned user ID and store in session
            header('location: member.php?username='.$username);

        }else{
            // try admin login
            $query2 = mysql_query("SELECT * FROM admin WHERE Email ='$username' AND Password ='$password'");
            if(mysql_num_rows($query2) == 1){
                $_SESSION['Email'] = $username;
                header("location: admin.php");
            }
            else{
                 echo "Failed Login Attempt"; 

            }
        }
    }

ユーザーをログインしようとすると、次のエラーが発生します。

警告: mysql_result(): 27 行目のoddjobexchange\core\functions\user.php の MySQL 結果インデックス 8 の行 0 にジャンプできません ログイン試行に失敗しました

27行目(下記)に問題が見られないため、このエラーを回避できません

return mysql_result(mysql_query("SELECT `MemberID` FROM `member` WHERE `Email` = '$username'"),0, 'MemberID');

私のデータベースでは、'MemberID' は行 0、'Email' は行 7、'Password' は行 8 です。

4

0 に答える 0