Продолжение: Нужна помощь в организации данных MySQL с привязкой к датам...

Alex_v.tv

Новичок
Продолжение: Нужна помощь в организации данных MySQL с привязкой к датам...

Вниманию мудрых гуру )

После некоторой возни этой ночью сотворил вот такую организацию:

1. по мылу мне скидывают объявление (т.к. позволить посетителям самим вносить в базу было бы опрометчиво :)),
я проверив его вношу в базу;
2. одно поле в базе соответствует начальной дате показов объявления, передаётся посредством now();
3. другое поле в базе соответствует дате окончания показов, вводится мной вручную в формате: Y-m-d;
4. формат данных обоих этих полей - DATE (Y-m-d);
5. выяснилось, что с такой организацией можно спокойно удалять объявления с истёкшим сроком:
PHP:
DELETE * FROM $table WHERE $end_date < now()
;

Вопрос: как на Ваш взгляд смотрится жизнеспособность такой примитивной системы?
 

Фанат

oncle terrible
Команда форума
1. по мылу мне скидывают объявление (т.к. позволить посетителям самим вносить в базу было бы опрометчиво :)),
это еще почему?
публикуешь только те объявления, в которых поле "показывать" равно единице.
единицу ставишь сам, руками, в интерфейсе, ОДНИМ кликом мыши
это называется "премодерация".

в остальном жизнеспособность нормальная.
 

Alex_v.tv

Новичок
потому, что необходима проверка на соответствие тематики ДО того, как объявление попадёт на страницу...
да и вообще охота быть в курсе, что публикуют....
 

Demiurg

Guest
Alex_v.tv
перечитай еще раз ответ Фаната, только на этот раз внимательно и полностью.
 

Alex_v.tv

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

В общем, внимательно слушаю
 

Demiurg

Guest
сколлько процентов фигни ты надеешся получить в лучшем случае ?
 

Alex_v.tv

Новичок
чёрт его знает..., честно говоря
наверно по-вашему всё же лучше будет :)
вроде все так работают, значит и мне так нада и нефиг придумывать велосипед....

а clean.php будет делать это:
PHP:
DELETE * FROM $table WHERE end_date < now() AND see != 1
или что-то вроде... могу ошибиться

-~{}~ 03.06.04 15:22:

а clean.php будет делать это:

DELETE * FROM $table WHERE end_date < now() AND see != 1

или что-то вроде... могу ошибиться
не, не так..., а так:

DELETE * FROM $table WHERE end_date < now() OR see !=1
 

Alex_v.tv

Новичок
попутный вопрос:
в в поле какого формата содержать тело сообщения?
у меня сейчас BLOB (могу ошибиться в написании).

каким образом просматривать текст сообщений, насыпавшихся за, допустим, день?

-~{}~ 03.06.04 15:29:

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

Demiurg

Guest
>в в поле какого формата содержать тело сообщения?
TEXT

что у тебя будет делать скрипто clear.php ?
 

Alex_v.tv

Новичок
что у тебя будет делать скрипто clear.php ?
чистить таблицу от ненужных (по причине окончания срока показа или отсутствию пригодности к показам вообще) объявлений... отсюда сравнение с now() и проверка на значения поля "показывать"

Фанат сказал: "публикуешь только те объявления, в которых поле "показывать" равно единице.
единицу ставишь сам, руками, в интерфейсе, ОДНИМ кликом мыши
это называется "премодерация".
"
собственно к этому и склоняюсь...
 

Demiurg

Guest
те, которые не пригодные к показу надо удалять по клику можератора. А удаление устаревших будет просто:
DELETE * FROM $table WHERE end_date < now()
 

Alex_v.tv

Новичок
те, которые не пригодные к показу надо удалять по клику можератора. А удаление устаревших будет просто:
т.е., как понимаю, проста в phpMyAdmin'е?

-~{}~ 03.06.04 16:15:

исправлюсь:
те, которые не пригодные к показу надо удалять по клику можератора.
т.е., как понимаю, проста в phpMyAdmin'е?
 

Demiurg

Guest
причем тут phpmyadmin ?
забудь про него и напиши свой собственный простенький интерфейс.
 

Alex_v.tv

Новичок
в-принципе он уже есть...
тогда надо будет добавить к нему функцию вывода поступивших за сутки сообщений... и ф-ю удаления помеченых (например с помощью <Input type=radio...>)
что-то вроде этого я реализовал в учебно-тренировочных целях здесь: http://www.kft.h11.ru/compl.php

прошу сие творение всерьёз не воспринимать :)

на большее пока не насоображал...

-~{}~ 03.06.04 17:02:

в-общем, всё понятно)

Благодарю за помощь
 

Demiurg

Guest
>например с помощью <Input type=radio...>
лучше тогда уж чекбоксами, что бы по одному не удалять.
 

Фанат

oncle terrible
Команда форума
вообще, я такие фигни не писал, в смысле досок объявлений.
у меня брезгливость вызывает все, связанное в мешочничеством и прочим торашеством.

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

Alex_v.tv

Новичок
ну, да... так, в общем и задумывалось...
просто пришла мысль, что когда-нидь объяв станет больше...
тогда, возможно, проще сразу заложить интерфейсик такого типа:
1. зашёл на admin.php, в директ, защищ. .htaccess, 1 раз в сутки
2. нажал "просмотр поступивших..."
3. собственно посмотрел и отредактировал... и заодно от устаревших очистил тем же скриптом...
хотя от уведомления можно не отказываться, но только ввиде, ссылки и темы письма...
 
Сверху