Здравствуйте, друзья! Сегодня мы поговорим о создании гостевой книги д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. Большое спасибо за внимание! Берегите себя!
1. На бесплатном хостинге есть только то, что дают.
2. Лучше, но совсем не обязательно. Порядочный гость оставит сообщение так как нужно (через мою форму), а хороший
хакер все равно обойдет ваши $_GET, $_POST, $_COOKIE и $HTTP_REFERER тоже.
3. Контроль длины производиться, но только неявно, самой БД (единственно, что только само сообщение может быть огромно - до 64Кб).
4. Да, есть, HtmlSpecialChars была использована, не использовал AddSlashes (и это большая ошибка, признаю свою вину, см. ниже). При в ключеной magic_quotes_gpc, данная проблема не столь остра, но дыра в безопасности остается (в панели управления).
5. Да, согласен, можно было бы и вырезать, но имя #$@%#$^%$
ничем не хуже чем AF4ETX09T43
. В e-mail и url есть дырка, можно использовать скрипты.
6. Интересно, что не неинициализировано?
Есть еще ряд интересных приемов, как например защита от автоматического ввода через картинку (как на этом сайте) http://www.сайт/webmast/php/Security-Images-in-PHP/
...
Картинок кажется небыло, зачем усложнять демонстрационный пример. Пока ни разу не встречал гостевой с подобной защитой. Что касается этого сайта, то это не гостевая.
Анатомия межсайтового скриптинга XSS
http://www.woweb.ru/index.htm/id/1073393942
Очень интересно, спасибо.
З.Ы. Если бы Аффтор потрудился бы почитать (и вниктуть) в статьи что на этом же сайте, то понял бы, на сколько его труд непрофессионален. Стоит учитывать опыт предыдущих Авторов и, по крайней мере, уважать их труды - они же для вас писали.
Где есть не уважение? Извините если кого обидел.
Что касается защиты, то советую еще раз прочесть первый абзац статьи, я не ставил цели расматривать надежную гостевую, а лишь показать как можно написать протейшую гостевую, для тех кто только начинает познавать CGI, ведь не все сразу приходит, надо начинать с простого, и ты тоже не сразу стал таким умным, тоже совершал ошибки, так что давай оставим аспекты защиты другим статьям, другим авторам.
Да, с точки зрения защиты этот скрипт непрофессионален, и я непрофесионал в области защиты, поэтому в первом абзаце и стоит соответвующая оговорка, которую, к сожалению не все прочли.
PS Цитата:
Закон "Об авторском праве и смежных правах"
Статья 6. Объект авторского права. Общие положения
1. Авторское право распространяется на произведения науки, литературы и искусства, являющиеся результатом творческой деятельности, независимо от назначения и достоинства
произведения, а также от способа его выражения.
Остальное можешь прочесть тут: http://www.febras.ru/~patent/copyright/2_3part2.html
В том числе и Статья 9. п.1
И не тебе решать пользоваться мне моим правом или нет.
Было рассказано о создании гостевой книги на сайте с помощью готового скрипта. Между тем, на небольших сайтах гостевая книга состоит обычно из нескольких сообщений (десять - пятнадцать) и редко пополняется новыми. В основном, книга засоряется спамом, всякого рода рекламой и ссылками на сайты. В результате, много времени тратится на её очистку и проверку (модерацию) сообщений.
Основные достоинства такого подхода следующие:
-
невозможность посторонним вставить свои замечательные идеи на страницу гостевой книги, минуя ваш строгий заградительный барьер,
- не надо создавать особый дизайн, так как строчки сообщений вставляются прямо на страницу сайта,
-
вы можете легко оптимизировать гостевую книгу, наполняя её ключевыми словами с целью продвижения сайта.
Сначала создадим форму для сообщений в гостевой книге с помощью любого редактора HTML и CSS. Для нашего примера не будем отходить от дизайна рассмотренной ранее книги. Кнопку Добавить сообщение сделаем картинкой-ссылкой на форму обратной связи (страница forma_02.html), открывающуюся в небольшом окне (пример действующий, можете проверить!).
|
Код ссылки "Добавить сообщение" следующий:
.
Здесь в JavaScript вы задаете адрес открываемой страницы (forma_02.html), ширину и высоту нового окна (500х600 пиксел) и его положение на экране монитора (верхний левый угол). Содержание окна не имеет каких либо особенностей и определяется необходимой вам информацией о посетителе: имя, адрес, e-mail, ICQ и т.п.
В случае удачной отправки сообщения выводится надпись:
"Спасибо за отправку вашего сообщения.
После проверки администратором сайта
оно будет добавлено в гостевую книгу.
"
Полный текст РНР-страницы для рассмотренного примера следующий:
Сообщение
A guest book can be a great way for your website visitors to make a permanent impression on their presence on your website without being too intrusive. Before you start thinking about the HTML source for a guestbook, you need to decide how you want it to flow and how you want it look. In this case we will look at a guestbook that places a form for users to sign at the top. Below that there will then be a list of all the comments posted by the readers.
The HTML Source CodeThe HTML source for our guestbook will consist of a web form and a list of DIV containers which will hold the display for the signed comments. The Part of the code that will handle the form is a simple as this.
Please Sign Our Guestbook
Full Name: | |
Email Address | |
Message: | |