Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/25: Рейтинг темы: голосов - 25, средняя оценка - 4.96
0 / 0 / 0
Регистрация: 02.05.2018
Сообщений: 8
1

"Неверный пароль" при авторизации

08.05.2018, 19:37. Показов 4957. Ответов 8

Author24 — интернет-сервис помощи студентам
Сделал такую авторизацию. До того зарегистрировал на "сайте" пользователя, его данные сохранились в БД. Логинюсь по е-мэйлу и паролю - вылетает "wrong password". Вписал строчку
PHP
1
 //echo $pass;
для проверки, выводит верный хэш пароля, то есть скрипт нормально забирает пароль из БД, а что дальше не так идёт?
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
$link = mysqli_connect("localhost", "admin","admin","sample");
    $result = mysqli_query($link, "SELECT user_id, user_password, user_login, access FROM user WHERE mail='".$_POST['mail']."'");
    if (!$result) {
    die(mysqli_error($link));
}
    if (mysqli_num_rows($result) > 0)
    {
        $pass = null;
 
        while ($row = mysqli_fetch_row($result))
        {
            $user_id = $row[0];
            $pass = $row[1];
            $name = $row[2];
            $access = $row [3];
            
        }
        //echo $pass;
        if (md5(md5($_POST['pass']))==$pass)
        {
            
            session_start();
            $_SESSION['mail'] = $_POST[mail];
            $_SESSION['name'] = $name;
            $_SESSION['access'] = $access;
            $_SESSION['user_id'] = $user_id;
            header('Location: http://localhost/sample/check.php', true, 303);
        }
        else
        {
            
            header('Refresh: 5; url= http://localhost/sample/login.php');
            printf('<!DOCTYPE html>
                <html>
                    <head>
                        <title>Wrong password</title>
                    </head>
                    <body>
                        <h1>Wrong password</h1>
                        <h3>You will be redirected in 5s...</h3><br>
                        <a href=" http://localhost/sample/login.php">Or click here</a>
                    </body>
                </html>');
            exit;
        }
    }
    else
    {
 
        header('Refresh: 5; url= http://localhost/sample/login.php');
        printf('<!DOCTYPE html>
                <html>
                    <head>
                        <title>Wrong email</title>
                    </head>
                    <body>
                        <h1>Wrong email</h1>
                        <h3>You will be redirected in 5s...</h3><br>
                        <a href=" http://localhost/sample/login.php">Or click here</a>
                    </body>
                </html>');
        exit;
    }
?>
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.05.2018, 19:37
Ответы с готовыми решениями:

Код PHP не берёт данные из базы данных, при авторизации всегда выдаёт прописанную ошибку "Неверный логин или пароль"
&lt;head&gt; &lt;meta charset=&quot;UTF-8&quot;&gt; &lt;title&gt;QestBar&lt;/title&gt; &lt;/head&gt; ...

Форма авторизации, не могу проверить хешированный пароль в базе данных
Здравствуйте. Пишу форму авторизации. Пользователь находится, но пароль проверку не проходит....

Не срабатывает авторизация PHP (пишет неверный логин или пароль)
Здравствуйте! Написал систему регистрации и авторизации на сайте. И уже второй день не могу найти...

Как задать логи и пароль в форме авторизации?
Есть форма для входа,подскажите пожалуйста как задать логин и пароль,для того чтоб пропускало...

Нужно создать страницу авторизации, пароль должен высылаться администратором сайта
На этой странице мы должны войти на сайт или зарегистрироваться. Суть в том, что при регистрации...

8
Эксперт JS
2034 / 1093 / 408
Регистрация: 29.04.2016
Сообщений: 2,612
08.05.2018, 19:47 2
Цитата Сообщение от izzy1 Посмотреть сообщение
выводит верный хэш пароля
а вы проверяли
$_POST['pass']) и пароль в БД --- они точно записаны ВМЕСТЕ в двойном md5();
просто предположение
может у вас кто-то из них не в двойном md5() потому что я вижу на 19 строке двойной md5()
0
0 / 0 / 0
Регистрация: 02.05.2018
Сообщений: 8
08.05.2018, 20:18  [ТС] 3
Цитата Сообщение от zlojnaxa Посмотреть сообщение
может у вас кто-то из них не в двойном md5() потому что я вижу на 19 строке двойной md5()
___
В форме регистрации, отсылаемой в БД, так: $password = md5(md5(trim($_POST['pass'])));
0
Эксперт JS
2034 / 1093 / 408
Регистрация: 29.04.2016
Сообщений: 2,612
08.05.2018, 22:22 4
Лучший ответ Сообщение было отмечено izzy1 как решение

Решение

izzy1, пока не понял почему но:
echo $pass показывает 897c8fde25c5cc5270cd --- это то что у вас в while(){}
а
echo md5(md5($_POST['pass'])) показывает 897c8fde25c5cc5270cda61425eed3c8


для сравнения:
897c8fde25c5cc5270cd
897c8fde25c5cc5270cda61425eed3c8

откуда-то берется "хвостик" --- мистика или невнимательность
ладно поковыряю дальше

Добавлено через 31 минуту
izzy1, по-моему у вас в таблице в ячейке user_password стоит маленькое количество символов для хранения, когда база создавалась в поле Длина/значения, попробуйте там поставить значение 50

Добавлено через 41 секунду
похоже что ваш пароль при занесении в базу просто обрезается

Добавлено через 43 секунды
то есть пароль обрезается в самой базе

Добавлено через 3 минуты
izzy1, оказалось что я прав теперь выводит все хорошо и не ругается <h1>Wrong password</h1> у вас ошибка не в коде а в ячейке
0
0 / 0 / 0
Регистрация: 02.05.2018
Сообщений: 8
08.05.2018, 22:22  [ТС] 5
Цитата Сообщение от zlojnaxa Посмотреть сообщение
откуда-то берется "хвостик" --- мистика или невнимательность
У меня тоже... Видимо, из-за этого и не логинится? И выходит, что я вообще этот md5 неправильно использую? Только вот как правильно?

пока писал, не заметил:

Цитата Сообщение от zlojnaxa Посмотреть сообщение
похоже что ваш пароль при занесении в базу просто обрезается
пойду проверю!
0
Эксперт JS
2034 / 1093 / 408
Регистрация: 29.04.2016
Сообщений: 2,612
08.05.2018, 22:27 6
Цитата Сообщение от izzy1 Посмотреть сообщение
пойду проверю!
100% -- уже проверил сделайте как на скрине и все должно быть ГУД
Миниатюры
"Неверный пароль" при авторизации  
1
Эксперт JS
2034 / 1093 / 408
Регистрация: 29.04.2016
Сообщений: 2,612
08.05.2018, 22:30 7
по крайней мере у меня теперь все четко
Миниатюры
"Неверный пароль" при авторизации  
1
0 / 0 / 0
Регистрация: 02.05.2018
Сообщений: 8
08.05.2018, 22:36  [ТС] 8
Цитата Сообщение от zlojnaxa Посмотреть сообщение
100% -- уже проверил сделайте как на скрине и все должно быть ГУД
Да-да, заработало, было 30, жахнул 100 на всякий) спасибо!
0
Эксперт JS
2034 / 1093 / 408
Регистрация: 29.04.2016
Сообщений: 2,612
08.05.2018, 22:36 9
izzy1, нуу... рад за вас
0
08.05.2018, 22:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.05.2018, 22:36
Помогаю со студенческими работами здесь

При отладке формы авторизации стабильно неверный логин\пароль
При запуске, постоянно выскакивает сообщение об неверном логине\пароле. думал, может проблемы с...

На вашу страницу в течение 24 часов было сделано более 10 неудачных попыток авторизации (вы или кто-то другой ввели неверный пароль 12 раз)
На вашу страницу в течение 24 часов было сделано более 10 неудачных попыток авторизации (вы или...

При обращении к сетевому диску debian из win 98 запрашивает пароль без имени и выдает ошибку "неверный пароль"
Добрый день. Есть комп с установленным windows 98. Есть расшаренные файлы на компе с debian с...

Неверный пароль при доступе к сетевому диску
Здравствуйте, у меня на работе стоит сервер приложения с Windows Server 2008. Есть сетевой диск,...

Dolphin - неверный логин и пароль при входе в админпанель
Всем привет, вот возник вопрос. Я устанавливаю движок Дельфин(англ.) при помощь денвера. Когда я...

Нужно расхешировать пароль из db MySQL при проверке авторизации
И снова здравствуйте! Продолжаю пилить свой проект на WPF, обучаясь на практике) Возникла...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru