При повторном вычислении поле popup не меняется на 1.
Генерация напоминаний делается вычислением:
insert_tip(1111, 2222, user);
Напоминание появляется, пользователь закрывает его и поле popup принимает значение 0.
При повторном выполнении вычисления (попытке генерации этого напоминания) popup должно становиться опять = 1 (меняться с 0)
Как это реализовать?
1
Повторное появление уведомления через вычисление insert_tip
Автор Radik, 13 июня 2014 10:52
Сообщений в теме: 7
#1
Отправлено 13 Июнь 2014 - 10:52
#2
Отправлено 16 Июнь 2014 - 10:30
1. напоминание должно выполняться не по условию,которое прописано в напоминании. Условие напоминания не используется.
2. напоминание исполняется по вычислению
2. напоминание исполняется по вычислению
#3
Отправлено 16 Июнь 2014 - 11:19
Посмотрел на работу данной функции, при повторном вызове на тот же $line новое напоминание не добавляется, идет обновление текста имеющегося, видимо поэтому popup и не меняется. Объяснить логику данной работы я не могу, т.к. не я добавлял данную функцию. Вы можете самостоятельно добавлять/обновлять запись в таблице cb_tips_show, описание полей было на форуме.
#4
Отправлено 16 Июнь 2014 - 11:32
Да, это я заметил. Только не нашел на форуме как мне вычислением полю popup присвоить 0. Можете подсказать?
#5
Отправлено 16 Июнь 2014 - 11:44
Запросом на обновление записи? Примеров запросов много на форуме.
#6
Отправлено 16 Июнь 2014 - 12:19
Сейчас проверю обнуление с помощью вычисления:
sql_update(TIPS_SHOW_TABLE, array("popup"=>0), "table_id=191 and line_id=",$ID);
sql_update(TIPS_SHOW_TABLE, array("popup"=>0), "table_id=191 and line_id=",$ID);
#7
Отправлено 16 Июнь 2014 - 12:25
Вместо table_id логичнее tip_id передавать, плюс user_id, если обнуление нужно только для конкретного пользователя. Т.е. условия, аналогичные аргументам в insert_tip.
#8
Отправлено 16 Июнь 2014 - 14:34
Согласен. Спасибо работает:
sql_update(TIPS_SHOW_TABLE, array("popup"=>0), "tip_id=айди_напоминания and line_id=",$line['поле_связи_с_таблицей_по_которой_делается_напоминание'][raw]," and user_id =",$line['поле_получателя_напоминания']);
sql_update(TIPS_SHOW_TABLE, array("popup"=>0), "tip_id=айди_напоминания and line_id=",$line['поле_связи_с_таблицей_по_которой_делается_напоминание'][raw]," and user_id =",$line['поле_получателя_напоминания']);
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных