Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля

Удаление объекта через N дней

20.01.2008, 21:04
Xert

Зарегистрирован:
2008-01-16
Сообщений: 10

В Netcat Small Бизнес была такая возвожность в настройках шаблона:
"Удалять объекты через __ дней после добавления"

Почему такого нет в 2.4 ?
Подскажите, как это реализуемо и применимо в неткате 2.4
21.01.2008, 01:33
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

Xert писал(а):
В Netcat Small Бизнес была такая возвожность в настройках шаблона:
"Удалять объекты через __ дней после добавления"

Почему такого нет в 2.4 ?
Подскажите, как это реализуемо и применимо в неткате 2.4


1. Такое поле было, но оно никак не функционировало.
2. Полагаю, что убрали из-за ненадобности.
3. Сами такое можете сделать - добавьте поле "дата удаления" и запустите банальный скриптик в планировщике заданий, который будет сравнивать системное время с "дата удаления" и удалять запись, если такое время настало.

Temet nosce...
21.01.2008, 16:17
Xert

Зарегистрирован:
2008-01-16
Сообщений: 10

До такого алгоритма я додумался, только время удаления необходимо высчитывать с "дата добавления + заданное колличество дней".

Проблема с написанием такого скрипта.
23.01.2008, 02:24
d

Зарегистрирован:
2007-02-09
Сообщений: 93

Код:
DELETE FROM MessageXX WHERE DATEDIFF(NOW(),Created) > 7


удаляет записи из компонента XX, созданные более 7 дней назад.
28.01.2008, 01:03
Гость
Гость

Полезно, кстати. Куда засунуть эту строку? В поле системных настроек шаблона?
25.01.2014, 07:05
Вячеслав
Студия "Кронос"
Вячеслав

Зарегистрирован:
2013-04-12
Сообщений: 91

Самому понадобился такой функционал.
Такой код прямо в форму добавления компонента.

<?= $db->query("DELETE FROM `главная таблица`.`MessageXX` WHERE `Created` < NOW() - INTERVAL 10 DAY"); ?>

Старые объекты будут удалятся если их дата создания больше 10 дней, сразу после добавления новых.
198 196 2014-01-25 07:05:12 9198
Описание проекта