Когда я нажимаю кнопку «Отправить», выполняется проверка ввода, но даже когда я правильно ввожу имя пользователя и пароль, которые хранятся в моей базе данных точно так же, как я вхожу в нее, с учетом хэша, но все, что я получаю это сообщение об ошибке, сообщающее мне, что комбинация неверна.Получение результата из запроса и возврат значения? PHP и MySQLi
Это мой Логин сценарий:
$username = $_POST['username'];
$password = $_POST['password'];
if (isset($_POST['submit']) === true) {
$login = login($username, $password);
if (empty($username) === true || empty($password) === true) {
$errors[] = "Please fill in all fields";
} elseif ($login === false) {
$errors[] = "That username and password combination is incorrect";
} else {
$_SESSION['login'] = $login;
echo 'Logged in';
}
}
А вот функции:
function login($username, $password) {
global $conn;
$query = "SELECT userId FROM users where userName = '$username' AND userPass = '$password'";
$result = mysqli_query($conn, $query);
$row_count = mysqli_num_rows($result);
if ($row_count >= 1) {
return $query['userId'];
} else {
return false;
}
}
Да, все равно не работает:/ –
Почему у вас даже есть функция getUserId? вы не используете эту информацию вообще. Я имею в виду, что ты есть, но ты называешь это позже. просто возвратите $ query ['userId'] – Andrew
Не следует '$ user_id = $ get_user_id ['user_id'];' be '$ user_id = $ get_user_id ['userId'];' – dstudeba