Грандиозная задача - движок блога - пред запись в блоге Программы для блогов. В блоголёте я решил уже все основные задачи (по крайней мере точно знаю как), за исключением одной - комментарии. Я мог бы считать себя специалистом по комментариям (как никак моя программа - коммент клиент, дает мне на это право).

До сих пор я так и не смог придумать простую и легкую структуру (имярек алгоритм) по управлению комментариями.

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

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

Также стоит вопрос кто должен обрабатывать формы отправки комментария: один глобальный класс или пост. Конкретнее какой должен быть адрес отправки коммента: либо тот же самый адрес поста, либо один спецадрес, как это сделано в Wordpress, с последующим редиректом к посту. Можно так и так. Если ставить адрес поста, то стоит вопрос о кешировании - в файл кеша придется включать специальную проверку комментирования, что в случае единого адреса не нужно. Включить проверку не сложно - прописать одну строку с include. Но тогда становится вопрос достоверности кеша в случае добавления нового коммента - файл кеша будет уже на исполнении и самому себя он может объявить недостоверным. Объявление кеша самого себя недостоверным, на мой взгляд, является ошибкой планирования: он может объявить себя недостоверным, чтобы уже следующее обращение к этому адресу вызвало полную регенерацию страницы, а в текущем исполнении отдать то, что есть. Как ни крути остается вариант только с единым адресом.

Следующий вопрос - это автозаполнение формы, то есть чтобы все поля были уже заполнены для уже отправлявших комменты. В WordPress в куках хранятся все данные комментатора: имя, урл, почта. По мне это как то небезопасно и чревато попытками атаковать сервер через подставные куки. Без кук не обойтись. .По мне можно в куке хранить хеш индификаторы юзверя, а данные для формы брать из сохраненных на сервере. Хеш уникален и его не подберешь. Далее вопрос о динамическом контенте: оставившим комменты, которые еще не были подтверждены админом, следует их показывать, а остальным нет. Эта часть никаким образом не кэшируется. Так что в кеш поста должен иметь вставку для автозаполнения и показа не апрувленных комментов.

Охота показывать вначале обычные комменты, а в конце, перед формой показывать список пингбеков, ну например только линки без маловразумительного текста в квадратных скобках. Также не забыть про фильтрование текста коммента - чистить теги, чтобы злодеи не портили дизайн страницы хитрожопыми тегами.

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

Мой блог находят по следующим фразам
где mysql хранит данные
билайн 3g модемы
Delphi SOAP передача XML документа
индексирование сайта
скачать программу для просмотров php файлов
шелл