Пишем скрипт гостевой книги. Гостевая книга на PHP Гостевая книга на PHP
Было рассказано о создании гостевой книги на сайте с помощью готового скрипта. Между тем, на небольших сайтах гостевая книга состоит обычно из нескольких сообщений (десять - пятнадцать) и редко пополняется новыми. В основном, книга засоряется спамом, всякого рода рекламой и ссылками на сайты. В результате, много времени тратится на её очистку и проверку (модерацию) сообщений.
Основные достоинства такого подхода следующие:
-
невозможность посторонним вставить свои замечательные идеи на страницу гостевой книги, минуя ваш строгий заградительный барьер,
- не надо создавать особый дизайн, так как строчки сообщений вставляются прямо на страницу сайта,
-
вы можете легко оптимизировать гостевую книгу, наполняя её ключевыми словами с целью продвижения сайта.
Сначала создадим форму для сообщений в гостевой книге с помощью любого редактора HTML и CSS. Для нашего примера не будем отходить от дизайна рассмотренной ранее книги. Кнопку Добавить сообщение сделаем картинкой-ссылкой на форму обратной связи (страница forma_02.html), открывающуюся в небольшом окне (пример действующий, можете проверить!).
|
Код ссылки "Добавить сообщение" следующий:
.
Здесь в JavaScript вы задаете адрес открываемой страницы (forma_02.html), ширину и высоту нового окна (500х600 пиксел) и его положение на экране монитора (верхний левый угол). Содержание окна не имеет каких либо особенностей и определяется необходимой вам информацией о посетителе: имя, адрес, e-mail, ICQ и т.п.
В случае удачной отправки сообщения выводится надпись:
"Спасибо за отправку вашего сообщения.
После проверки администратором сайта
оно будет добавлено в гостевую книгу.
"
Полный текст РНР-страницы для рассмотренного примера следующий:
Сообщение
Здравствуйте, друзья! Сегодня мы поговорим о создании гостевой книги дJoomla , позволяющей пользователям оставлять свои записи с вопросами, мнениями и отзывами. Для этой благой цели нам понадобится бесплатный, простой, удобный и с русским интерфейсом компонент, поддерживающий все существующие версии Joomla. Под все эти определения подходит !
Гостевая книга — еще один прекрасный способ наладить контакт с пользователями вашего сайта. Напомню, что ранее мы уже рассматривали создание формы обратной связи и добавление на сайт .
По своей структуре гостевая напоминает страницу без какого-либо контента, но с комментариями. Отличие только в порядке добавления записей: свежие комментарии добавляются вниз списка, а в гостевой книге последние записи располагаются наоборот наверху. Кроме этого, под гостевую книгу выделяется отдельная страница, в то время как комментарии располагаются на разных страницах в качестве дополнения к их контенту.
Хотя, что я об этом рассказываю! Думаю, большинство из вас много раз сталкивались с ней на различных сайта, ибо эта фишка очень популярна. Хватит разглагольствовать, давайте приступим к практике.
Установка и русификация Phoca GuestbookПрежде чем приступать к установки компонента Phoca Guestbook, его следует скачать. Идем на официальный сайт разработчиков , где нам следует скачать две вещи:
Поочередно установите компонент и языковой пакет к нему через . При установке Phoca Guestbook появится следующее окошко:
Так как мы устанавливаем компонент Phoca Guestbook, а не обновляем его, то нажимаем «Install». Установка пройдет автоматически, и после ее окончания в разделе «Компоненты» появится новый подпункт — «Phoca Guestbook». В него то мы и заходим.
Создание гостевой книги в Joomla 2.5Интерфейс должен быть на русском языке, что значительно упростит работу с Phoca Guestbook и создание гостевой книги Joomla. Переходим в раздел «Гостевые книги» и нажимаем на кнопку создать в тулбаре.
Все что от нас требуется, это ввести название гостевой в поле заголовка и нажать «Сохранить и закрыть» в тулбаре.
Вот так быстро мы создали гостевую книгу! Теперь следует вывести ее на страницу сайта.
За создание страниц отвечают пункты меню Joomla, поэтому создаем новый пункт меню с типом «Phoca Guestbook — Гостевая книга». В обязательных параметрах выбираем только что созданную гостевую и жмем «Сохранить и закрыть».
Настройка гостевой книги, защита от спамаПеред тем как гостевая книга примет первых пользователей, ее еще необходимо настроить и защитить от спама. В панели управления компонента Phoca Guestbook воспользуемся кнопкой «Настройки».
Все опции полностью на русском и снабжены подсказками, которые появляются при наведении на них курсора мыши, поэтому разобраться с ними будет несложно.
В закладке «Форма» располагаются настройки формы для составления сообщения: какие поля в ней будут присутствовать, позиция по отношению к записям, размеры окна редактора и некоторые другие опции.
В разделе «Основные» представлены следующие опции:
Третий раздел «Сообщения» позволяет настроить внешний вид записей гостевой книги Joomla.
На самом деле, я бы посоветовал отключить совсем капчу от Phoca Guestbook и воспользоваться отличным плагином .
Последний раздел — «Права» . Задает права доступа для групп пользователей, хотя его можно вовсе не трогать.
Вот и разобрались с плагином Phoca Guestbook. Большое спасибо за внимание! Берегите себя!
В данном уроке мы создадим гостевую книгу на PHP с использованием AJAX. Записи будут храниться в базе данных. Таблица будет содержать следующую информацию: имя отправителя, адрес email, IP адрес и дата-время последней записи. Будет использоваться jQuery (для реализации AJAX). Также будет реализована простая защита от спама - можно размещать не более одной записи каждые 10 минут.
Шаг 1. SQLДля работы нашего приложения требуется создать таблицу:
CREATE TABLE IF NOT EXISTS `s178_guestbook` (`id` int(10) unsigned NOT NULL auto_increment, `name` varchar(255) default "", `email` varchar(255) default "", `description` varchar(255) default "", `when` int(11) NOT NULL default "0", `ip` varchar(20) default NULL, PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Шаг 2. PHPОсновной файл будет содержать следующий код:
guestbook.phpГостевая книга Добавьте ваш отзыв здесь function submitComment(e) { var name = $("#name").val(); var email = $("#email").val(); var text = $("#text").val(); if (name && email && text) { $.post("guestbook.php", { "name": name, "email": email, "text": text }, function(data){ if (data != "1") { $("#records_list").fadeOut(1000, function () { $(this).html(data); $(this).fadeIn(1000); }); } else { $("#warning2").fadeIn(2000, function () { $(this).fadeOut(2000); }); } }); } else { $("#warning1").fadeIn(2000, function () { $(this).fadeOut(2000); }); } };
Ваше имя: | |
Ваш email: | |
Отзыв: | |
Заполните все обязательные поля Вы не можете размещать более одного отзыва в течении 10 минут (защита от спама) |