Задать вопрос
@jarderRek

Как получить индекс массива c результатами $stmt->get_result?

if(isset($_POST['submit'])){
                        $login = $_POST['login'];
                        $password = $_POST['password'];

                        $errors = array();

                        $stmt = $base->prepare("SELECT * FROM `register` WHERE `login` = ? AND `password` = ?");
                        $stmt->bind_param('ss', $login, $password);
                        $stmt->execute();
    
                        $user = $stmt->get_result();
                        $result = $user->fetch_assoc();

                        if(!$result){
                            $errors[] = 'Пользователь не найден! <br> <a href="reg.php" style="text-decoration:underline;">зарегистрироватся</a>';
                        }

                        if($password != $result['password']){ /*Эта строка не работатет! Как исправить?*/
                            $errors[] = 'Пароль введен неверно!';
                        }
                    }


Нужен index поля 'password':
627e204e3a901137227476.png
  • Вопрос задан
  • 72 просмотра
Подписаться 1 Простой 4 комментария
Пригласить эксперта
Ответы на вопрос 3
delphinpro
@delphinpro Куратор тега PHP
frontend developer
лучше сразу ссылку на статью) В первом результате демонстрируется написание дырявых запросов и использования MD5. Очень много мусора в поиске.

TheAndrey7, Пожалуй, вы правы.
https://habr.com/ru/post/665602/
Ответ написан
@or1gami
Сходу скажу, что нельзя указывать где пользователь допустил ошибку (в логине или в пароле).
Это очень не безопасно. Насчет ошибки, мне кажется, что ты ее допустил тут
$user = $stmt->get_result();
$result = $user->fetch_assoc();

Я уже давно не работал с mysqli, но если память не изменяет, то надо делать так:
$result = $stmt->fetch_assoc();
Ответ написан
Комментировать
usdglander
@usdglander Куратор тега PHP
Yipee-ki-yay
var_dump($result);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы