Обработчик для модуля комментариев

 

Добрый день дорогие мои! Добро пожаловать на Блог RS! Сегодня мы доделаем наш модуль комментариев, добавив в обработчик несколько строчек кода, который позволят добавлять ответы в базу данных. Урок очень простой, и очень хорошо, что его приходится писать именно в понедельник. Как Вы все знаете понедельник день тяжелый, а для меня он тяжелее в двойне, ибо я заболел =( По сути нам нужно добавить всего лишь три строчки кода. Странно, что я решил написать об этом в отдельном посте.

 

 

Предисловие

 

Обязательно должен сказать пару слов для новоприбывших, дело в том, что данный пост на все 100% касается цикла статей "Создать блог с нуля". Цикл посвящен разработки персонального блога на php. Если Вы только пришли на мой блог, то читать именно этот пост бессмысленно, ибо в нем описаны переделки файла comm.php которого у Вас нет!

Если Вы хотите на практике научится писать свой проект, то заходите по ссылке выше и приступайте к обучению, и не забудьте подписаться на RSS ленту блога через ридер, или же по почте

 

Дополняем обработчик комментариев

 

Открываем файл comm.php и внесем в него некоторые исправления. Вспомните, в прошлом посте, мы создали скрытое поле формы, в котором содержится id комментария на который пользователь пишет ответ. Ну или содержит ноль, если пользователь пишет не ответ а комментарий. Так вот, нам необходимо поместить значение этого поля в переменную recomm. Для этого после строчки

if(isset($_POST['code_comm']))$code_comm = $_POST['code_comm'];

Пишем вот такую строчку

if(isset($_POST['recomm']))$recomm = $_POST['recomm'];

Теперь у нас объявлена переменная recomm, можно приступать к проверки правильности значения ( ведь эта переменная должна быть числом! ) и записи в базу данных.

Для проверки правильности я использовал регулярное выражения, хотя можно прибегнуть и к определенной функции, но я опишу свой способ. Сразу после

...
else $site_comm = "";//создаем пустую, безопасную переменную для записи в БД

Пишем вот такую строчку:

if(!preg_match("/^[0-9]+$/s",$recomm))$recomm = 0;//Проверяем обычный это комм или же ответ

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

        //Добавляем сообщение в базу данных
$result_add_comm = mysql_query ("INSERT INTO comm (author,text,date_comm,blog,email,site,comm)
VALUES ('$author_comm','$txt_comm','$date_comm','$id_comm','$email_comm','$site_comm','$recomm')");

Как видите я добавил в запрос лишь имя новой колонки - comm и прописал значение для этой колонки - $recomm

 

Заключение

 

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

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

Всего Вам наилучшего! У меня все!

Исходник
 

Возможно Вам будут интересны следующие заметки

Комментарии (2)

Ваше имя *
Сайт
Ваш E-mail *
Ваше сообщение *
 
Вы не подтвердили условия политики конфиденциальности.
Андрей, 26 Марта 2012 г. 13:15 пишет:
Гость
Не очень понял смысл. А до этого куда комментарии добавлялись?
Rio-Shaman, 26 Марта 2012 г. 13:17 пишет:
Автор
До этого добавлялись лишь комментарии, сейчас движок умеет публиковать ответы на комментарии =)
Ответ для пользователя: Андрей