Этот код входа php всегда ничего не возвращает - PullRequest
0 голосов
/ 14 января 2019

файл операций

function userLogin($username,$pass){
    $password = md5($pass);
    $stmt = $this->con->prepare("SELECT id FROM users WHERE username = ? AND password = ?");
    $stmt->bind_param("ss",$username, $password);
    $stmt->execute();
    $stmt->store_result();
    return $stmt->num_rows > 0;
}

function getUserByUsername($username){
    $stmt = $this->con->prepare("SELECT * FROM users WHERE username = ?");
    $stmt->bind_param("s",$username);
    $stmt->execute();
    return $stmt->get_result()->fetch_assoc();
}

userlogin file

require_once('../includes/DbOperations.php');

$response = array();

if($_SERVER['REQUEST_METHOD'] == 'POST'){

    if (isset($_POST['username']) and isset($_POST['password'])) {
        $db = new DbOperations();

        if ($db->userLogin($_POST['username'], $_POST['password'])) {
            $user = $db->getUserByUsername($_POST['username']);
            $response['error'] = false;
            $response['id'] = $user['id'];
            $response['email'] = $user['email'];
            $response['username'] = $user['username'];
        }else{
            $response['error'] = true;
            $response['message'] = "Invalid username or password";
        }

    }else{
        $response['error'] = true;
        $response['message'] = "Required fields are missing";
    }
}

1 Ответ

0 голосов
/ 14 января 2019

Используйте код ниже

function userLogin($username,$pass){
    $password = md5($pass);
    $stmt = $this->con->prepare("SELECT id FROM users WHERE username = ? AND password = ?");
    $stmt->bind_param("ss",$uname, $pwd);
    $uname = $username;
    $pwd = $password;
    $stmt->execute();
    $stmt->store_result();
    return $stmt->num_rows > 0;
}

function getUserByUsername($username){
    $stmt = $this->con->prepare("SELECT * FROM users WHERE username = ?");
    $stmt->bind_param("s",$uname);
    $uname = $username;
    $stmt->execute();
    return $stmt->get_result()->fetch_assoc();
}
...