Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Удаление записей из таблицы по заданному времени на php

Ответить
Настройки темы
Удаление записей из таблицы по заданному времени на php

Пользователь


Сообщения: 50
Благодарности: 1

Профиль | Отправить PM | Цитировать


Ребят подскажите чайнику как реализовать на php+ mysql удаление записей из таблицы по заданному времени.

Например: есть группа статьей половину из которых выли сознаны пол года назад, необходимо создать скрипит который удалял стати который больше чем 30 дней


Заранее благодарю за помощь!!!!

Отправлено: 15:21, 13-08-2009

 

Аватара для dmitryst

Ветеран


Сообщения: 7114
Благодарности: 886

Профиль | Отправить PM | Цитировать


если есть доступ к crontab-у, то лучше оттуда (написать скрипт, удаляющий нужные таблицы, и в крон вписать его с указанием времени выполнения, скажем, каждый день в час ночи)

-------
Осваиваю FreeBSD


Отправлено: 15:26, 13-08-2009 | #2



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

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


Аватара для Coutty

Кот Ти


Сообщения: 7318
Благодарности: 1204

Профиль | Отправить PM | Цитировать


dmitryst, а нужно ли? Ведь требуется только 1 раз удалить записи.

magwolf,
Ключевым будет sql-запрос типа такого:
Код: Выделить весь код
DELETE * FROM table_name WHERE st_date < '13.07.2009'
Разумеется, надо оформить соответствующим образом php-кодом. Писали ведь скрипты? Если нет, то читайте руководство php) Примерно так будет:
PHP код: Выделить весь код

<?php

mysql_connect
(...);
mysql_select_db(...);
mysql_query("DELETE * FROM table_name WHERE st_date < '13.07.2009'") or die("Ничего не вышло");
echo 
"Всё вышло";
?>

Вместо многоточий подставьте параметры соединения.
В результате будет или "всё", или "ничего" (если ошибки какие в запросе ).

Под st_date подразумевается имя поля, где хранится дата статьи. Соответственно, формат даты нужно использовать тот, который в БД записан. Бывает, что дату хранят в трёх полях (день, месяц, год), но это маловероятно.

Если есть какой-нибудь phpMyAdmin на сервере, то можете прямо в нём выполнить запрос (для начала всё то же самое попробуйте, но вместо DELETE напишите SELECT. Если выдаст именно те статьи, которые надо удалять, то пишите DELETE вторым запросом).
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:37, 13-08-2009 | #3


Аватара для dmitryst

Ветеран


Сообщения: 7114
Благодарности: 886

Профиль | Отправить PM | Цитировать


Цитата Coutty:
Ведь требуется только 1 раз удалить записи. »
я так понял, что надо удалять регулярно. Ничего, автор топика уточнит
Кстати, mysql не имеет встроенного средства для уточнения даты последней модификации таблицы? Из MySQLAdministrator-а видно, наверняка оно где-то хранится (или используется просто дата модификации соответствующего файла .FRM?). А то можно было бы получить списочек... (по типу SHOW VARIABLES LIKE...)

-------
Осваиваю FreeBSD


Отправлено: 17:21, 13-08-2009 | #4


Пользователь


Сообщения: 50
Благодарности: 1

Профиль | Отправить PM | Цитировать


Записи необходимо чтоб удалялись автоматически. например: прошел месяц или срок установленный заранее и скрипит, удалил все записи срок которых больше 30 дней или срок который укажет админ.

Отправлено: 08:32, 14-08-2009 | #5


Аватара для dmitryst

Ветеран


Сообщения: 7114
Благодарности: 886

Профиль | Отправить PM | Цитировать


magwolf, значит, всё-таки cron

-------
Осваиваю FreeBSD


Отправлено: 14:13, 14-08-2009 | #6



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Удаление записей из таблицы по заданному времени на php

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Удаление записей в просмотре событий. Michael Защита компьютерных систем 2 27-06-2007 14:32
Динамические таблицы в PHP ssdm Вебмастеру 3 12-03-2007 06:47
Mysql Выбор записей + к каждой count из другой таблицы benya Вебмастеру 11 26-05-2006 18:27
Удаление записей из таблицы MySQL unknown Вебмастеру 3 21-05-2003 14:54
Удаление записей MikePr О сайте и форуме 7 21-10-2002 07:28




 
Переход