Не устанавливаются кукис

147
06 января 2020, 02:10

При авторизации не хочет запоминаться логин с помощью куки, написал все верно, но вот единственная строчка с setcookie('login', $_POST['login'], time()+3600*24*30*12*20); не работает.

<?
ob_start();
session_cache_limiter('private');
session_cache_expire(2592000); // 5 лет в минутах / кеширование на 5 лет в сессии
session_start();
?>
<!DOCTYPE html>
<html>
<head>
<title></title>
  <meta charset="utf-8"> 
  <link href="https://fonts.googleapis.com/css?family=Nunito+Sans" rel="stylesheet"> <!-- Обычный текст -->
  <link href="https://fonts.googleapis.com/css?family=Cormorant+Garamond" rel="stylesheet"> <!-- Прописной для главн -->
  <link href="https://fonts.googleapis.com/css?family=Great+Vibes" rel="stylesheet"><!-- Прописной для главн -->
  <link href="https://fonts.googleapis.com/css?family=Nunito" rel="stylesheet">
  <link rel="stylesheet" type="text/css" href="../styles/index.css">
  <link rel="stylesheet" type="text/css" href="../styles/auth.css">
  <script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
  <meta charset="utf-8" name="viewport" content="width = 960, initial-scale=1">
  <link rel="stylesheet" type="text/css" href="../styles/auth_process.css">
</head>
<body>
    <?
include '../db.php';
$login = $_POST['login'];
$password = $_POST['password'];
try {
$stmt = $dbh->prepare("SELECT * FROM users");
$stmt->execute();
while ( $row1 = $stmt->fetch() ) {
    $login_in_data = $row1['login'];
    $name_in_data = $row1['name'];
}
} catch (exeption $e) { echo $e->getMessage(); } 
if ( $login == $login_in_data ) {
    setcookie('login', $_POST['login'], time()+3600*24*30*12*20);
    $stmt = $dbh->prepare("SELECT password FROM users WHERE login = (:login) ");
    $stmt->bindParam(':login', $login);
    $stmt->execute();
while ( $row2 = $stmt->fetch() ) {
    $password_in_data = $row2['password'];
}
    if ( password_verify($password,$password_in_data) ) { 
        ?>
        <div class="middle2"> <?
            echo "Вы вошли, как " . $name_in_data;                       //Вошел
            ?>
            <br> <a href="../personalAccount.php">Личный кабинет</a> 
            <? header('Location: ../personalAccount.php'); ?>
        </div>
        <?
        $_SESSION['authorized'] = 1;       // Помечаем, что пользователь авторизован
        $_SESSION['login'] = $login;       //вносим логин в сессию
    } else { 
         echo "<p class='font'>Не правильно введён логин или пароль!</p>"; ?>
        <a href="../auth.php">Вернуться</a>
        <?
        session_unset();
        session_destroy();
    }
} else {
?> 
<div class="middle2 font"> 
    <?
    echo "Не правильно введён логин или пароль!";             //Не вошел
    ?>
    <a href="../auth.php">Вернуться</a>
</div>
<?
session_unset();
session_destroy();
}
?>
<? ob_end_flush(); ?>
</body>
</html>

Знаю, что есть косячные моменты, но хотелось бы сначала понять, с чего куки не задаются :р

READ ALSO
Обращение к базе данных из класса

Обращение к базе данных из класса

Всем привет! Подскажите такой моментНа сколько плохой практикой является передавать как параметр $link = mysqli_connect($host, $user, $password, $database) в класс

137
Не загружается файл

Не загружается файл

Всем приветПодскажите, куда делся файл? Название файла в базу записывается

122
Разложить в php ответ из MySQL

Разложить в php ответ из MySQL

Доброе утро, уважаемые! Получаю вывод из MySQL таблицы в таком виде:

145
Как добавить некоторые классы в woocommerce?

Как добавить некоторые классы в woocommerce?

Я нашел способ сделать слайдер на миниатюрах, и добился кодом ниже, но проблема в том что я не могу повесить Lazy load на миниатюры, где я только...

145