FoxWeb

софт для студентов
Искать здесь

Простая гостевая книга с возможностью администрирования

Раздел: PHP, MySQL, веб-программирование Автор: fox++
E-mail: спаму - нет! Www: http://foxweb.net.ru
Просмотров: 4152 Дата: 08.10.2005
Fox GuestBook v.1.1 - простой скрипт гостевой книги с возможностью ответа администртора, удаления записей. Благодаря простоте скрипта и тому, что все её функции умещаются в 160 строках PHP-кода скрипт можно использовать в качестве модуля для сайтовых движков. Самая свежая версия дистрибутива находится по адресу http://foxweb.net.ru/test/foxgb/.

Основные возможности

  1. Запись сообщений с указанием имени.
  2. Фильтрация нежелательных последовательностей в имени теле сообщения:
    • успешно фильтрует вредоносный HTML-код и JavaScript.
    • автоматическая замена специальных символов на безопасные HTML-коды.

  3. Ведётся запись IP-адреса автора сообщения.
  4. Ограничение 30 символов для имени и 10000 символов для сообщения.
  5. Возможности администрирования:
    • администратор может отвечать на сообщения пользователей и не один раз.
    • администратор может удалять сообщения пользователей.

Требования

Для работы скрипта потребуется интерпретатор PHP 4.x.x, СУБД MySQL 4.1.x и какая-нибудь оболочка-клиент для импортирования SQL-скрипта. Скрипт успешно тестировался с применением следующего набора софта:

  • MySQL 4.1.7
  • PHP 4.4.0
  • Apache 1.3.33
  • Windows XP

Также безошибочно запускается на любом классическом хостинг-сервере (имеется ввиду классический набор Apache-PHP-MySQL), а также практически на любых версиях указанных пакетов.

Дистрибутив Fox GuestBook v.1.1

  • foxgb.php - скрипт гостевой книги.
  • foxgb.sql - sql-скрипт для создания таблицы foxgb.
  • *.gif - изображения кнопок.
  • readme.txt - этот файл.

Установка

  1. Создайте базу данных.
  2. Выполните скрипт foxgb.sql, чтобы создать таблицы foxgb и replics.
  3. В скрипте foxgb.php измените параметры подключения к MySQL:

    mysql_connect("имя_сервера", "имя_пользователя", "пароль");
    mysql_select_db ("имя_бд");

  4. Можно запускать foxgb.php на выполнение.

Настройка

Можно изменять число выводимых записей на странице, изменяя значение переменной:
$articles_per_page = 20;

Добавление записи

  1. Введите имя в поле "Имя" и сообщение в поле "Сообщение".
  2. Нажмите кнопку "Отправить".
  3. Вы увидите добавленное сообщение.

Администрирование

  1. Перейдите в режим администрирования: http://localhost/foxgb.php?admin=1
  2. К форме ввода добавится две кнопки "Ответить" и "Удалить".
  3. К каждому сообщению добавится флажок.
  4. Установите галочку возле нужного сообщения и нажмите соответствующую кнопку "Ответить" для ответа на сообщение или "Удалить" для удаления сообщения.

Принцип работы

Работа скрипта основана на взаимодействии с севером СУБД MySQL. Сначала нам нужно подключиться БД. Будем считать, что там уже существует таблицы foxgb и replics. Входные переменные скрипта, передаваемые методом GET через строку запроса приводятся к целому типу (для безопасности). Функция links() вычисляет количество записей, делит их на количество записей, выводимых на одну страницу и формирует HTML-ссылки для перехода на следующие страницы. Чтение записей гостевой книги, ответов администратора и вывод их на экран выполняет функция read(). Запись сообщения в гостевую книгу (вставка записи в таблицу foxgb) выполняется функцией write(). Функция reply() выполняет запись ответа администратора (вставка записи в таблицу replics) при нажатии кнопки "Ответить" в режиме администрирования. Удаление записи из таблицы foxgb производится функцией delete(). Далее, если задан параметр admin=1, скрипт помещает рядом формой две кнопки, доступные только администратору "Ответить" и "Удалить". Следующая часть скрипта выполняет соответствующие функции при нажатии соответствующих кнопок. В конце всегда выполняется функция read().

Примеры запуска

http://localhost/foxgb.php - обычный вывод.
http://localhost/foxgb.php?admin=1 - режим администрирования.
http://localhost/foxgb.php?arc=1 - режим архива, выводит все записи.
http://localhost/foxgb.php?st=10 - постраничный вывод с сообщения 10.

Самая свежая версия дистрибутива находится по адресу http://foxweb.net.ru/test/foxgb/ . Там же можно испробовать её в работе.

Благодарности

Большое спасибо рэп-группе "Дети Асфальта" - Тимуру и Вофке, за то, что они заставили меня сделать эту гостевую книгу такой, какая она есть!

Тебе понравился этот скрипт? А между прочим в этот сайт и эти статьи было вложено очень много труда. Мало того, он хостится на коммерческом хостинге. Если ты не хочешь, чтобы этот проект загнулся, как и множество других подобных ему, перечисли любую сумму на один из WM-кошельков:

Z270800823925
U141975722722
R378525212270

Быть может на оплату хостинга наберу :)

Комментарии

Комментариев пока нет.
Но ты можешь стать первым :)

Оставить комментарий

Ваше имя

Ваш комментарий

Код   Защитный код. Если вы не видите здесь рисунок - обновите страницу.
Оценка   

Заметки по этой теме