<MyRusakov.ru />

PHP и MySQL с Нуля до Гуру 2.0

PHP и MySQL с Нуля до Гуру 2.0

Данный курс научит Вас программировать на самом популярном Web-языке в мире - PHP. Курс состоит из 11 разделов, в которых с нуля рассказывается и показывается процесс написания различных скриптов на PHP.

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

Почти к каждому уроку идут упражнения.

Просмотрев данный курс, Вы сможете создавать абсолютно любые PHP-сайты любой сложности.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Удаление записей с прошедшей датой
18.01.2013 10:58:12 Удаление записей с прошедшей датой Сообщение #1
wanderer

wanderer

Продвинутый

Продвинутый

Дата регистрации:
04.07.2012 12:02:14

Сообщений: 56

Хорошо, пойдем по другому пути.
Вот у вас есть день рождение.

И вы решили добавить дату вашего дня рождения на ваш сайт дабы известить всех что ваш день рождения состоится 10 марта, и вот ваш день рождения настал, и запись которая была в базе данных удалилась автоматически. как это сделать?
Профиль Ответить
18.01.2013 11:09:04 Удаление записей с прошедшей датой Сообщение #2
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Запустить через cron в соответствующий день скрипт, который удалит запись по id.
Профиль Ответить
18.01.2013 11:10:02 Удаление записей с прошедшей датой Сообщение #3
wanderer

wanderer

Продвинутый

Продвинутый

Дата регистрации:
04.07.2012 12:02:14

Сообщений: 56

Ну а если этих записей много, и они создаются динамически, любьми далекими от крон, и вообще от программирования?! Как автоматизировать?
Профиль Ответить
18.01.2013 11:12:29 Удаление записей с прошедшей датой Сообщение #4
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Эта запись должна иметь дату вывода, например, 5-е мая 2012 года. Должен быть скрипт написан, который запускается через cron. И он удаляет все записи, которые уже прошли. Скрипт должен запускаться ежедневно.
Профиль Ответить
18.01.2013 11:13:55 Удаление записей с прошедшей датой Сообщение #5
wanderer

wanderer

Продвинутый

Продвинутый

Дата регистрации:
04.07.2012 12:02:14

Сообщений: 56

я понимаю алгоритм, я не знаю как написать запрос, на удаление тех записей которые уже прошли. как написать его?
Профиль Ответить
18.01.2013 19:40:17 Удаление записей с прошедшей датой Сообщение #6
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

"DELETE FROM `table` WHERE `date` < '".time()."'" - как-то так. А в поле date() должен храниться числовой формат времени наступления события.
Профиль Ответить
18.01.2013 22:05:28 Удаление записей с прошедшей датой Сообщение #7
Скромняга

Скромняга

Освоившийся

Освоившийся

Дата регистрации:
04.03.2012 01:24:28

Сообщений: 37

Добавлю к последнему комментарию, на всякий случай.

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

Чтобы не висело прошедшее событие лишние пару часов.
Я думаю вы этого не хотите.

Ну то есть:

ДР 20.09.2013 года, значит наступить оно должно например 19 сентября в 23:59, либо 20 сентября в 23:59(если нужно чтобы событие висело этот самый памятный день).

А крон должен срабатывать в 00:01 каждого дня.

Вроде бы каждый праздник обычно празднуют с 00:00 до 00:00)

Может этот пост чем то поможет.
Профиль Ответить