Не могу понять где ошибка. 2 одинаковых кода, один ООП, другой процедурный. Процедурный работает, ООП нет

Переписываю процедурный код в ООП. Столкнулся с проблемой очень странной... ООП код должен работать, но нет.. не работает. Прошу вашей помощи в сравнении. Может я где то что то не так написал? Вот оба кода - процедурный:

if(isset($_POST["loginUserEmail"])){ // Данные из поля 
    $email = mysqli_real_escape_string($connection, $_POST["loginUserEmail"]);
    $password = mysqli_real_escape_string($connection, $_POST["loginPassword"]);
    if($email != "" && $password != ""){
        //Check are entered username and password matched
        $sql = "SELECT * FROM accounts WHERE email = '$email' AND password = '$password'";
        if(mysqli_num_rows(mysqli_query($connection, $sql)) > 0){
            echo 1;
        }else{
            echo 0;
        }
    }else{
        echo "Оба поля обязательны.";
    }
}else{
    echo "Успешное соединение";
}

А это ООП который я написал:

if(isset($_POST["loginUserEmail"])) {
    
    $email = $_POST["loginUserEmail"];
    $password = $_POST["loginPassword"];

    if($email != "" && $password != "") {
        $accounts = $db->query('SELECT * FROM accounts WHERE email = ? AND password = ?', $email, $password);
        $accounts->numRows(); // Подсчитываем кол-во строк.
        
        if ($accounts->numRows() > 0) { // Больше 0 сообщаем 1, пускаем в игру
            echo 1;
        }else{
            echo 0;
        }
    }else{ echo "Оба поля обязательны.";}
}else { echo "Успешное соединение"; }

Что не так с моим кодом? Помогите пожалуйста. Может я в синтаксисе ошибся?


Ответы (0 шт):