Запись в cooke при клике на ссылку(кнопку) JS

158
25 марта 2018, 22:00

Добавляет модальное окно в куки, тем самым показывает один раз, пока куки не удален из хранилища, а php проверяет если есть куки то не показывать модаль, если нет, показать модаль.

Подскажите как сделать так что бы модальное окно открывалось, но куки были сохранены только при нажатии на кнопку(или ссылку) в этом модальном окне.

Код:

if (!isset($_COOKIE['modal'])) {
 "Модальное окно"
}

<script>
    function createCookie(name, value, days) {
        var expires;
        if (days) {
            var date = new Date();
            date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
            expires = "; expires=" + date.toGMTString();
        } else {
            expires = "";
        }
        document.cookie = encodeURIComponent(name) + "=" + encodeURIComponent(value) + expires + "; path=/";
    }
    createCookie('modal', '1', 30);
</script>
Answer 1

Доброй ночи. Например так

<a href="#" onclick="createCookie('modal', '1', 30); return false">test link</a>

размещаете эту ссылку в модальном окне и убираете вызов функции вне ссылки.

<script>
function createCookie(name, value, days) {
    var expires;
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
        expires = "; expires=" + date.toGMTString();
    } else {
        expires = "";
    }
    document.cookie = encodeURIComponent(name) + "=" + encodeURIComponent(value) + expires + "; path=/";
}
</script>
READ ALSO
Составить алгоритм выдачи ролей в игре Мафия на PHP

Составить алгоритм выдачи ролей в игре Мафия на PHP

Здравствуйте! Помогите составить алгоритм, чтобы на входе было только количество игроков от 10 до 30, а не выходе показывало количество всех...

142
Метод для слияния 2-ух List&#39;ов С++

Метод для слияния 2-ух List'ов С++

Необходимо написать метод для отсортированного слияния List A и List BПример: List A 10 20 30 40 List B 15 25 35 Результат List C 10 15 20 25 30 35 40

205
boost::any копирует значение?

boost::any копирует значение?

Почему не совпадает указатель на объект, если сначала его превратит в any, а потом обратно в тот-же тип?

190
Перевод выражения в код ассемблера

Перевод выражения в код ассемблера

Есть программа который переводит выражение в обратную польскую запись и потом вычисляет результатмне нужно в момент вычисления транслировать...

197