Почему не работает условие с паролем?

Начал изучать php и тут столкнулся с проблеммой. Есть две страницы - login и content . При правильном вводе данных - меня должно перебрасывать на другую страницу, однако почему то условие не срабатывает. Как я понял, путём проб и ошибок - не работает условие с паролем. Я уверен - проблемма какая-то суперЭлементарная, но я хз чё делать
КОД
php
<?php
session_start();
ini_set('session.gc.maxlifetime', 3600);
$connection = new PDO('mysql:host=localhost; dbname=register; charset=utf8', 'root', '');
$login = $connection->query('SELECT * FROM `users`');

if ($_POST['password']){
    foreach ($login as $log){
        if ($_POST['password']==$log['password'] && $_POST['login']== $log['login'] ){
          $_SESSION['login'] = $_POST['login'];
          $_SESSION['password'] = $_POST['password'];
          header('Location: content.php');
        }
  }
  echo "Неверный логин или пароль";
}
?>
<!--Форма-->
<form action="" method="post" >
  <input type="text"     name="login"  value="test1" placeholder="login" required>
  <input type="password" name="password" value="test123" placeholder="password"required>
  <input type="submit">
</form>
  • Вопрос задан
  • 164 просмотра
Решения вопроса 1
usdglander
@usdglander Куратор тега PHP
Yipee-ki-yay
$login = $connection->query('SELECT * FROM `users`');

возвращает не массив.

А вообще сразу проверяйте в запросе пользователя:
SELECT * FROM `users` WHERE `login` = 'login' AND `password` = 'pass';


upd:
Начал изучать php

Включите ошибки на максимальный уровень и многое станет очевидным.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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