web_Developer_Victor
@web_Developer_Victor
Что такое google?

Не аворизует пользователя?

Не авторизует пользователя на сайте. Я делаю очень простой блог (просто для себя). Когда нажимаю авторизоваться вылазит белый экран. Вот код. Ошибок не видает.

<?php 

				$data = $_POST;

				if (isset($data["do_login"])) {
					$errors = array();

					$users_log = mysqli_query($db_connect, "SELECT * FROM `users` WHERE `name` = '" . $data["login"] . "'");

					if ( $data['login'] == $users_log["name"]) {
						if (passwor_verify($data['password'], $users_log["pass"]) ) {
							# code...
						} else {
							$errors[] = "Пароль не правильний";
						}
					} else {
						$errors[] = "Користувач з таким именем не знайдений";
					}
					echo "<div style='color:red;'>" .	array_shift($errors) . "</div> <hr>";
				}

				?>
  • Вопрос задан
  • 126 просмотров
Решения вопроса 1
slo_nik
@slo_nik
Добрый день.
Вы уже второй вопрос задаёте и пишите, что ошибок нет. Но при этом получаете белый экран.
Так может стоит заглянуть в логи сервер, консоль браузера, включить вывод ошибок в браузер? Повысить, наконец-то, уровень отображаемых ошибок.
Так же не помешает расставить проверки в коде.
Там, глядишь, и ошибка вылезет и Вы сами разберётесь в своей проблеме...

p.s.
Начать можно с того, что вот здесь неверно.
$data = $_POST;
        if (isset($data["do_login"])) {

Правильней будет так
if (isset($_POST)) {
    $data = $_POST;
    // остальной Ваш код
}


p.s.s
Я немного изменил Ваш код и попробовал запустить.
$users_log = mysqli_query($mysqli, "SELECT * FROM `users` WHERE `username` = 'administrator'");

if ($users_log["username"] == 'administrator') {
  if (passwor_verify($data['password'], $users_log["pass"]) ) {
  # code...
  } else {
    $errors[] = "Пароль не правильний";
  }
} else {
  $errors[] = "Користувач з таким именем не знайдений";
}
echo "<div style='color:red;'>" .	array_shift($errors) . "</div> <hr>";

И в результате появилось то, что Вы никак не хотите настраивать!
Fatal error: Uncaught Error: Cannot use object of type mysqli_result as array in /home/slonik/localhost/www/new.php:12 Stack trace: #0 {main} thrown in /home/slonik/localhost/www/new.php on line 12

Вот документация, прочитайте и сделайте как надо.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
dmitrybascacov
@dmitrybascacov
Создание ботов, парсеров и прочей дичи в веб среде
А может данные в <form>...</form> не те?
Мб action не тот. Или method не равен post. А мб имена указаны в id, а не в name атрибутах input'ов, что также бывает
Ответ написан
metallix
@metallix
Backend - developer
if (passwor_verify($data['password'], $users_log["pass"]) ) {
              # code...
            }

'passwor_verify' очепятка в названии ф-ии, password_verify
Ответ написан
Ваш ответ на вопрос

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

Войти через TM ID
Похожие вопросы
Badoo Development Москва
от 140 000 до 180 000 руб.
Badoo Development Москва
от 180 000 до 250 000 руб.
от 90 000 до 150 000 руб.
14 авг. 2018, в 22:43
350 руб./за проект
14 авг. 2018, в 19:03
10000 руб./за проект
14 авг. 2018, в 18:10
1000 руб./в час