Я пытаюсь настроить всплывающее окно политики cookie на сайте.
Я следовал онлайн-учебнику к письму (подумал я), но он не работает.
Баннер отображается, как и ожидалось, но при нажатии кнопки «Принять» страница обновляется, но файл cookie не установлен, и баннер все еще там.
Я просмотрел учебник, и все, кажется, так, как он напечатал. Может быть, кто-то может подсказать, что может быть не так.
Стили были помещены в файл CSS, но я думаю, что проблема должна быть с PHP. Я искал альтернативные коды, но они настолько разные, что я не уверен, что они будут работать с этим методом.
Интересно, связано ли это с командами isset.
Кроме того, есть ли способ убедиться, что при установке файла cookie и подтверждении того, что вы остаетесь на той же странице, а не заходите в корневой каталог?
Это в верхней части HTML-кода, то есть до doctype
if (isset($_GET['accept-cookies'])) {
setcookie('accept-cookies', 'true', time() + 31557600);
header('Location: ./');
}
?>
Это раздел с баннером (мне нравится, как он выглядит, поэтому предпочитаю не менять коды стиля)
if (!isset($_COOKIE['accept-cookies'])) {
?>
<div class="cookie-banner">
<div class="cookie-container">
<p style="font-family: Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-style: normal; font-weight: 500; font-size: medium;">We use cookies to track usage and preferences. By using this website we will assume that you consent to their use as per our <a href="/privacy.html"><u>Privacy and Cookie Policy</u></a>.</p>
<p style="font-family: Gotham, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-style: normal; font-weight: 600; font-size: medium;"><a href="?accept-cookies" class="cookiebutton">Okay</a></p>
</div>
</div>
<?php
}
?>
На всякий случай, вот части css
background-color: #abd1ff;
padding: 5px 10px;
border-radius: 5px;
display: inline-block;
border: 2px solid #4a6894;
border-bottom: 2px solid #4a6894;
}
.cookie-banner {
background: #6c9bd3;
position: fixed;
top: 0;
left: 0;
width: 98%;
}
.cookie-banner .cookie-container {
margin: 0 auto;
width: 70%;
padding-bottom: 10px;
color: #1f2b3a;
padding: 15px;
}
Я собирался добавить функцию слайда вниз, но когда я добавил, чтобы она изначально не отображалась в коде css, баннер исчезал, даже если на файл js был указан код слайда.
Любая помощь в том, что я мог бы добавить, чтобы она работала, чего не хватало, была бы отличной.
СПАСИБО !!!!
Нет сообщений об ошибках. Баннер просто не исчезнет, а cookie не установлен.