Проблема с куки, PHP

QQ-Invest

Как заработать деньги в интернете
Дата публикации: 06.05.2025

Проблема с куки, PHP

8bf74e26

Содержимое статьи:

При попытке использовать созданный куки в условном выражении с формой входа в аккаунт скрипт PHP выдает ошибку "ключ массива не определен". Однако при успешном входе в аккаунт куки устанавливается правильно.

Код

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$password = $_POST['password'];
$mail = $_POST['mail'];
require 'connect.php';
$result = $connect->query("SELECT * FROM `users` WHERE `email` = '$mail' AND `password` = '$password'");
$user = $result->fetch_assoc();
if ($user == 0) {
echo 'Пользователь не найден либо данные были введены неверно';
exit();
}
setcookie('email', $user['email'], time() + 3600, "/");
$connect->close();
header("Location: autorization.php");
}
?>

Разметка

<?php
if($_COOKIE['email'] == ''):
?>
Вход в личный кабинет
Нет аккаунта? Зарегистрируйтесь!
<?php else: ?>
Приветствуем Вас, пользователь! Ваша почта: <?= $_COOKIE['email'] ?>
История покупок
<?php endif; ?>

Проблема

При попытке использовать $_COOKIE['email'] в разметке до выполнения формы входа мы получаем ошибку "ключ массива не определен", поскольку куки еще не был установлен.

Возможные решения

1. Установить куки при загрузке страницы Если проверка куки необходима сразу при загрузке страницы, установите куки в блоке if до формы входа. Например:

if (isset($_COOKIE['email'])) {
// Куки уже установлен
} else {
// Куки еще не установлен, установить его
}

2. Использовать операторы сравнения Вместо строгого сравнения (==) используйте операторы сравнения, которые не чувствительны к типу данных, например:

if (!empty($_COOKIE['email'])):

3. Проверить существование куки перед использованием Перед использованием $_COOKIE['email'] проверьте его существование с помощью функции isset():

if (isset($_COOKIE['email'])) {
// Куки существует
} else {
// Куки не существует
}


Чат-мешанина
Эксклюзивные туры в Болгарию
Инновационные методы 3D-печати в строительстве бетонных конструкций
Инновационные методы управления строительными проектами с использованием блокчейна
Женская одежда с короткими рукавами
Кадастровые работы в Воронеже
Новостройки Оренбурга: выбор жилья по вашим предпочтениям
Окна VEKA Казань - высокая прочность
Онлайн генератор паролей для браузера
Пиломатериалы для строительства заборов
Секреты Вконтакте: особенности работы с группами
VDSina: Лучший хостинг для всех проектов
Vdsina вечный хостинг: поддержка множества сайтов
Видео чат рулетка онлайн
Заказ воды с гарантией