Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
2 / 2 / 0
Регистрация: 29.12.2012
Сообщений: 168

Отдельная кука для для отдельного модального окна

28.12.2013, 15:12. Показов 1348. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
у меня на cms koobie есть функционал показа всплывающих модальных окон, запускаются из админки активацией, проблема в том что если активировать 2 и более модального окна то всегда будет отображаться только одно модальное окно, потому вот этим кодом создается одна общая кука reveal_modal
PHP
1
2
3
4
5
6
7
8
9
10
11
if($users->is_loaded()){
 
//dynamic mwindows
$dynamicmw=$db->Query("SELECT * FROM pure_modal_windows WHERE location LIKE '%".mysql_real_escape_string($location)."%' AND active=1 LIMIT 1")->fetchrow();
      if(!$_COOKIE['reveal_modal'])
          {
                $tmpl->assign("mw_content",$dynamicmw->content);
                $tmpl->assign("mw_effect",$dynamicmw->effect); 
                setcookie("reveal_modal",mktime(),time()+3600*$dynamicmw->show_time);  
                }
}
Если куку удаляю то модальное окно всплывает, закрываю его второе, третье уже не отображается, здесь нужно сделать как-то привязку на каждое модальное окно отдельную куку а не одну на всех, получается что активировал 4 модалки показываться будет последнее по сортировке

Помогите пож-та чтобы создавались разные куки для разных модальных окон
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.12.2013, 15:12
Ответы с готовыми решениями:

Подсчет суммы для каждого модального окна отдельно
Всем привет! Я абсолютный новичок в PHP. Собственно говоря я просто сайт из HTML переделал в PHP с загрузкой товара из БД. Сложного...

Отдельная сессия для каждого пользователя, возможно ли это?
задача вот в чем: нужно чтобы каждому зашедшему пользователю на некую страницу можно было только один раз нажать на баннер, который...

Загрузка содержимого модального окна из отдельного файла
Добрый вечер. Хочу расположить контент модальных окон в отдельных .html файлах, чтобы не загружать много лишних модальных окон вместе с...

6
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
28.12.2013, 15:22
Т.е. если у пользователя установлена COOKIE, то окно, связанное с этой COOKIE не должно всплывать? Я правильно понял?
0
2 / 2 / 0
Регистрация: 29.12.2012
Сообщений: 168
28.12.2013, 15:29  [ТС]
Активировал 3 модальных окна из них один раз в заданный промежуток времени жизни куки покажется последнее окно, например через час я активировал 4-е модальное окно и получается что новая кука не создастся потому что она уже существует и соответственно активированное модальное окно не отобразится, нужно чтобы кука с уникальным именем создавалась для каждого нового активированного через админку модального окна
PHP
1
2
3
4
5
6
7
8
9
10
11
if($users->is_loaded()){
 
    //dynamic mwindows
    $dynamicmw=$db->Query("SELECT * FROM pure_modal_windows WHERE location LIKE '%".mysql_real_escape_string($location)."%' AND active=1 LIMIT 1")->fetchrow();
    if(!$_COOKIE['reveal_modal'])
        {
        $tmpl->assign("mw_content",$dynamicmw->content);
        $tmpl->assign("mw_effect",$dynamicmw->effect);  
        setcookie("reveal_modal",mktime(),time()+3600*$dynamicmw->show_time);  
        } 
}
Тут в коде даже проверяется кука с одним именем, всегда проверяет одну и ту же куку

Можно как-то сделать чтобы одно модальное окно привязывалось к уникальной куке?
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
28.12.2013, 16:05
Можно через админку добавлять ещё поле "название куки" в базу. И проверять так:
PHP
1
2
3
4
5
6
7
8
9
10
11
if($users->is_loaded()){
 
    //dynamic mwindows
    $dynamicmw=$db->Query("SELECT * FROM pure_modal_windows WHERE location LIKE '%".mysql_real_escape_string($location)."%' AND active=1 LIMIT 1")->fetchrow();
    if(!$_COOKIE[$dynamicmw->cookie])
        {
        $tmpl->assign("mw_content",$dynamicmw->content);
        $tmpl->assign("mw_effect",$dynamicmw->effect);  
        setcookie($dynamicmw->cookie,mktime(),time()+3600*$dynamicmw->show_time);  
        } 
}
0
2 / 2 / 0
Регистрация: 29.12.2012
Сообщений: 168
28.12.2013, 16:13  [ТС]
PHP
1
setcookie($dynamicmw->cookie,mktime(),time()+3600*$dynamicmw->show_time);
С этим кодом кука вообще не создается
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
29.12.2013, 13:33
Конечно она не будет создаваться, поля базе-то нет. Я сказал - так будет работать, если создать дополнительное поле.
0
2 / 2 / 0
Регистрация: 29.12.2012
Сообщений: 168
30.12.2013, 08:16  [ТС]
lyod
Можете полный код привести ? что за поле ?

Добавлено через 54 минуты
Сейчас вот так попробовал, но один нюанс каждое модальное окно в админке активирую они появляются, куки у них создаются вот так reveal12, reveal16, reveal17 цифры на конце это id поля в таблице, дело в том что если куки свое отживут то заново создастся для последнего активированного модального окна например reveal12 был последним активирован, reveal16, reveal17 уже заново не создадутся после как отживут

PHP
1
2
3
4
5
6
7
8
9
10
11
if($users->is_loaded()){
 
    //dynamic mwindows
    $dynamicmw=$db->Query("SELECT * FROM pure_modal_windows WHERE location LIKE '%".mysql_real_escape_string($location)."%' AND active=1 LIMIT 1")->fetchrow();
    if(!$_COOKIE["reveal".$dynamicmw->wid])
        {
        $tmpl->assign("mw_content",$dynamicmw->content);
        $tmpl->assign("mw_effect",$dynamicmw->effect);  
        setcookie("reveal".$dynamicmw->wid,mktime(),time()+3600*$dynamicmw->show_time);  
        } 
}
Добавлено через 4 минуты
И еще можно сделать так если в админке я деактивировал, нужно чтобы куки с ним связанные хоть они еще и недожили свое удалились
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.12.2013, 08:16
Помогаю со студенческими работами здесь

Как написать скрипт для скрытия модального окна при клике вне окна(на боди) ?
У меня модальное окно вообще даже не открывается при нажатии на кнопку,потому что у меня так прописано в скрипте ...

Кнопка для вывода модального окна
Как сделать кнопку для вывода модального окна, сколько гуглил не очень понимаю как и что должно происходить Т.е. при нажатии на кнопку...

Сделать кнопку для закрытия модального окна
Как закоыть модальное HTML окно после отправки формы? Окно открыто с помощю :target. Желательно без JS/Jquery, но если по другому не...

Код для кнопки, печать модального окна
Друзья, подскажите. Вот я разработал модальное окно. На форме "Модальном окне" есть две кнопки 1. ПЕЧАТЬ 2. ОТМЕНА - Вопрос:...

Как задать ширину для модального окна в JS
Вопрос конечно простейший, но я новичок в JS. Хотел было прописать в CSS, но стиль width не применяется, хотя все остальные стили работают....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru