Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 10.06.2019
Сообщений: 65
MySQL

Проблемы с авторизацией

30.09.2019, 14:28. Показов 1150. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, bool given in
Заканчивается неверно, Авторизация не пройдена. Где я ошибся? Пишут, что это предупреждение говорит о том, что я неверно сделал sql запрос. Где я мог ошибиться в запросе? Без проверки на собаку, а просто сверкой логина все работало

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
<?php
 
 
// Страница авторизации
 
// Функция для генерации случайной строки
function generateCode($length=6) {
    $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHI JKLMNOPRQSTUVWXYZ0123456789";
    $code = "";
    $clen = strlen($chars) - 1;
    while (strlen($code) < $length) {
            $code .= $chars[mt_rand(0,$clen)];
    }
    return $code;
}
 
 
// Соединямся с БД
$link=mysqli_connect("localhost", "serverROOT", "*,fhvfktq_2001#", "blog");
 
if(isset($_POST['submit']))
{
    // Вытаскиваем из БД запись, у которой логин равняется введенному
    if (strstr(($_POST['login']), '@') == true)
    {
        echo "Верно, в строке есть @";
        $query = mysqli_query($link,"SELECT user_id, user_password FROM users WHERE user_email='".mysqli_real_escape_string($link,$_POST['login'])."' LIMIT 1");    
    }
    else
    {
         echo "Неверно, в строке нет @";
        $query = mysqli_query($link,"SELECT user_id, user_password FROM users WHERE user_login='".mysqli_real_escape_string($link,$_POST['login'])."' LIMIT 1");    
    }
    
    
    $data = mysqli_fetch_assoc($query);
 
    // Сравниваем пароли
    if($data['user_password'] === md5(md5($_POST['password'])))
    {
        // Генерируем случайное число и шифруем его
        $hash = md5(generateCode(10));
 
        // Ставим куки
        setcookie("id", $data['user_id'], time()+60*60*24*30);
        setcookie("hash", $hash, time()+60*60*24*30,null,null,null,true); // httponly !!!
 
        // Переадресовываем браузер на страницу проверки нашего скрипта
        header("Location: check.php"); exit();
    }
    else
    {
        echo "<script>alert('Вы ввели неправильный логин/пароль')</script>";
    }
}
?>
 
?>
HTML5
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
<!DOCTYPE html>
<html lang="en">
<head>
    <title>Sign In</title>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
<!--===============================================================================================-->  
    <link rel="icon" type="image/png" href="img/icons/favicon.ico"/>
<!--===============================================================================================-->
    <link rel="stylesheet" type="text/css" href="vendor/bootstrap/css/bootstrap.min.css">
<!--===============================================================================================-->
    <link rel="stylesheet" type="text/css" href="fonts/font-awesome-4.7.0/css/font-awesome.min.css">
<!--===============================================================================================-->
    <link rel="stylesheet" type="text/css" href="vendor/animate/animate.css">
<!--===============================================================================================-->  
    <link rel="stylesheet" type="text/css" href="vendor/css-hamburgers/hamburgers.min.css">
<!--===============================================================================================-->
    <link rel="stylesheet" type="text/css" href="vendor/select2/select2.min.css">
<!--===============================================================================================-->
    <link rel="stylesheet" type="text/css" href="css/util.css">
    <link rel="stylesheet" type="text/css" href="css/main.css">
<!--===============================================================================================-->
</head>
<body>
    
    <div class="limiter">
        <div class="container-login100">
            <div class="wrap-login100">
                <div class="login100-pic js-tilt" data-tilt>
                    <img src="img/img-01.png" alt="IMG">
                </div>
 
                <form class="login100-form validate-form" method="POST">
                    <span class="login100-form-title">
                        Авторизация пользователя
                    </span>
 
                    <div class="wrap-input100 validate-input">
                        <input class="input100" type="text" name="login" placeholder="Login">
                        <span class="focus-input100"></span>
                        <span class="symbol-input100">
                            <i class="fa fa-user-circle " aria-hidden="true"></i>
                        </span>
                    </div>
 
                    <div class="wrap-input100 validate-input" data-validate = "Login is required">
                        <input class="input100" type="password" name="password" placeholder="Password">
                        <span class="focus-input100"></span>
                        <span class="symbol-input100">
                            <i class="fa fa-lock" aria-hidden="true"></i>
                        </span>
                    </div>
                    
                    <div class="container-login100-form-btn">
                        <button class="login100-form-btn" name="submit">
                            Sign In
                        </button>
                    </div>
 
                    <div class="text-center p-t-12">
                        <span class="txt1">
                            Forgot
                        </span>
                        <a class="txt2" href="#">
                            Username / Password?
                        </a>
                    </div>
 
                    <div class="text-center p-t-136">
                        <a class="txt2" href="register.php">
                            Create your Account
                            <i class="fa fa-long-arrow-right m-l-5" aria-hidden="true"></i>
                        </a>
                    </div>
                </form>
            </div>
        </div>
    </div>
    
    
 
    
<!--===============================================================================================-->  
    <script src="vendor/jquery/jquery-3.2.1.min.js"></script>
<!--===============================================================================================-->
    <script src="vendor/bootstrap/js/popper.js"></script>
    <script src="vendor/bootstrap/js/bootstrap.min.js"></script>
<!--===============================================================================================-->
    <script src="vendor/select2/select2.min.js"></script>
<!--===============================================================================================-->
    <script src="vendor/tilt/tilt.jquery.min.js"></script>
    <script >
        $('.js-tilt').tilt({
            scale: 1.1
        })
    </script>
<!--===============================================================================================-->
    <script src="js/main.js"></script>
 
 
</body>
</html>
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.09.2019, 14:28
Ответы с готовыми решениями:

Заминка с авторизацией
Доброго времени суток. Я начинающий веб-программист, работаю над собственным сайтом. Сайт работает с БД форума. Поэтому, систему...

Неполадки с авторизацией
С подключением к БД нету проблем, в ней есть таблица users там столбцы user_login и user_password Что не так с кодом, все время пишет...

Проблема с авторизацией
&lt;?php $dbc = mysqli_connect('localhost', 'qgenkous_admins', 'lynx', 'qgenkous_users'); if(!isset($_COOKIE)) { if(isset($_POST)) { ...

1
28 / 24 / 10
Регистрация: 26.04.2015
Сообщений: 307
30.09.2019, 15:15
а чему равен $query у вас по дебагу?

Добавлено через 2 минуты
и допишите к вашим запросам or die("ERROR: ".mysql_error())
PHP
1
$query = mysqli_query($link,"SELECT user_id, user_password FROM users WHERE user_email='".mysqli_real_escape_string($link,$_POST['login'])."' LIMIT 1") or die("ERROR: ".mysql_error());
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.09.2019, 15:15
Помогаю со студенческими работами здесь

Сайт с авторизацией hostinger
Здравствуйте! Есть сайт который в локальной сети работает: можно пройти регистрацию и авторизоваться. Но на сервере Hostinger.ru не...

Не могу разобраться с авторизацией
Здравствуйте, уважаемые веб-программисты. Уже на протяжении суток не могу разобраться с авторизацией пользователей. Сделал login form под...

неполадки с авторизацией в игре
всем добрый вечер! Говорю сразу, код не мой. Возникла проблема с авторизацией в игре, а точнее я так думаю проблема с таймаутом сессии. То...

не могу разобраться с авторизацией
Всем, привет! помогите пожалуйста разобраться, программирование на php только осваиваю . Вот в чем загвоздка, попадая на главную страницу...

Использование Cron для запуска PHP с авторизацией
Всем привет. С какими параметрами мне запустить Cron, чтобы заработал PHP-скрипт, работающий только после авторизации? Проблема в том,...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru