Смекни!
smekni.com

Разработка интернет-приложения для организации электронной доски объявлений (стр. 5 из 6)

Принимаемые параметры:

action – код действия (0 – отображение главной страницы каталога, 1 – отображение разделов каталога, 2 – отображение объявлений в текущем подразделе каталога); id – идентификатор текущего раздела или подраздела каталога; f – идентификатор фильтра сообщений (0 – фильтр выключен, 1..3 – фильтр включен на соответствующий тип; n – порядковый номер запрашиваемой страницы.

Функции:

check($value);

- возвращает 1 если строка value содержит цифровые символы, иначе 0.

catalog_options($id);

- возвращает значение параметра каталога с порядковым номером id из таблицы OPTIONS.

catalog_item_name($id);

- возвращает значение поля name из таблицы SUBJECT по заданному идентификатору подраздела id.

catalog_print();

- выводит в гипертекстовом формате дерево подразделов и разделов каталога.

message();

- выводит в гипертекстовом формате объявления текущего раздела или подраздела с применением фильтра типа сообщений.

message_catalog();

- выводит в гипертекстовом формате отображение разделов и подразделов каталога, отображаемые на заглавной странице электронной доски объявлений.

4) Модуль adduser.php

Назначение: добавление новой учетной записи пользователя.

Принимаемые параметры:

action – код действия (0 – вывод формы регистрации, 1 – добавление учетной записи); login – желаемый логин пользователя, password – желаемый пароль, contact – контактная информация о пользователе.

Функции:

check($value);

- возвращает «1» если строка value содержит цифровые символы, иначе «0».

check_enter($value)

- возвращает «1» если строка value содержит буквенно-цифровые символы, иначе «0».

check_id($id);

- возвращает значение поля topic таблицы SUBJECT по заданному порядковому номеру записи.

message_check($t);

- возвращает текст t, в котором HTML-тэги заменены на их «безопасные» эквиваленты.

user_form_add();

- выводит форму регистрации пользователя.

user_add();

- добавляет новую учетную запись пользователя в таблицу USERS.

5) Модуль enter.php

Назначение: авторизация пользователя.

Принимаемые параметры:

login – логин пользователя, password – пароль.

Функции:

check_enter($value);

- возвращает «1» если строка value содержит буквенно-цифровые символы, иначе «0».

randString($pass_len);

- возвращает строку длиной pass_len из случайно сгенерированных буквенно-цифровых символов.

6) Модуль sessions.php

Назначение: аутентификация пользователя.

Принимаемые параметры:

$_SESSION["session"] – значение кода сессии авторизованного пользователя.

Функции:

not_enter();

- делает редирект пользователя на модуль авторизации enter.php в случае невозможности аутентификации.

7) Модуль users.php

Назначение: отображение в гипертекстовом формате интерфейса аккаунта пользователя и функциональный набор средств для работы с объявлениями.

Принимаемые параметры: action – код действия, $id, $n, $i, $a;

Функции:

check($value);

- возвращает «1» если строка value содержит цифровые символы, иначе «0».

check_enter($value)

- возвращает «1» если строка value содержит буквенно-цифровые символы, иначе «0».

check_id($id);

- возвращает значение поля topic таблицы SUBJECT по заданному порядковому номеру записи.

catalog_options($id);

- возвращает значение параметра каталога с порядковым номером id из таблицы OPTIONS.

catalog_item_name($id);

- возвращает значение поля name из таблицы SUBJECT по заданному идентификатору подраздела id.

user_login($id);

- возвращает логин пользователя из таблицы USERS по заданному идентификатору id.

catalog_print();

- выводит в гипертекстовом формате дерево подразделов и разделов каталога.

message();

- выводит список объявлений текущего раздела или подраздела каталога объявлений.

catalog_list();

- выводит список разделов и подразделов каталога объявлений.

action_list();

- формирует список типов объявлений из таблицы ACTION.

message_add();

- добавление нового объявления в таблицу MESSAGES.

message_check($t);

- возвращает текст t, в котором HTML-тэги заменены на их «безопасные» эквиваленты.

message_del();

- удаление объявления из таблицы MESSAGES.

message_form_edit();

- вывод формы редактирования текста объявления.

message_edit();

- обновление текста объявления в таблице MESSAGES.

user_exit();

- закрытие пользовательской сессии и выход из аккаунта.

user_del();

- удаление учетной записи текущего пользователя.

send_mail();

- рассылка объявлений на почтовые адреса подписчиков.

8) Модуль mail.php

Назначение: отображение в гипертекстовом формате интерфейса аккаунта подписки на почтовую рассылку и необходимый функциональный набор средств для работы.

Принимаемые параметры: action – код действия (1 – добавление подписки на текущий подраздел каталога, 2 – удаление подписки от текущего раздела, 3 – включение почтовой рассылки, 4 – удаление подписки, 5 – регистрация почтового адреса, 6 – активация рассылки подтверждающим кодом, 7 – удаление почтового адреса из рассылки); id – текущий подраздел каталога; еmail – почовый адрес подписчика.

Функции:

check($value);

- возвращает «1» если строка value содержит буквенно-цифровые символы, иначе «0».

check_id($id);

- возвращает значение поля topic таблицы SUBJECT по заданному порядковому номеру записи.

check_mail($mail);

- возвращает «1» если строка mail содержит правильный формат записи e-mail адресов, иначе «0».

catalog_options($id);

- возвращает значение параметра каталога с порядковым номером id из таблицы OPTIONS.

message_catalog();

- выводит в гипертекстовом формате отображение разделов и подразделов каталога, отображаемые на заглавной странице электронной доски объявлений.

topic_add();

- добавление подписки на почтовую рассылку объявлений текущего подраздела каталога.

topic_del();

- удаление подписки на почтовую рассылку объявлений текущего подраздела каталога.

sendmail_enable();

- включение или выключение рассылки на данный e-mail.

topic_del_all();

- отписка почтового адреса от всех подразделов.

user_reg();

- регистрация почтового адреса.

user_reg_activation();

- активация почтовой подписки.

user_form_reg();

- вывод формы регистрации почтового адреса.

activation_wait();

- вывод формы с запросом на ввод активирующего кода.

user_del();

- удаление почтового адреса из рассылки.

9) Модуль moderator.php

Назначение: отображение в гипертекстовом формате интерфейса аккаунта модератора и функциональный набор средств для работы с каталогом объявлений и удалением сообщений.

Принимаемые параметры:

action – код действия (0 – отображение главной страницы каталога, 1 – отображение разделов каталога, 2 – отображение объявлений в текущем подразделе каталога); id – идентификатор текущего раздела или подраздела каталога; n – порядковый номер запрашиваемой страницы.

Функции:

check($value);

- возвращает «1» если строка value содержит цифровые символы, иначе «0».

catalog_options($id);

- возвращает значение параметра каталога с порядковым номером id из таблицы OPTIONS.

catalog_item_name($id);

- возвращает значение поля name из таблицы SUBJECT по заданному идентификатору подраздела id.

catalog_print();

- выводит в гипертекстовом формате дерево подразделов и разделов каталога.

message();

- выводит в гипертекстовом формате объявления текущего раздела или подраздела.

10) Модуль admin.php

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

Принимаемые параметры:

action – код действия (1 – обновляет значение основных параметров каталога в таблице OPTIONS, 2 – создает новый раздел в каталоге с идентификатором id, 3 – создает новый подраздел с идентификатором id, 4 – удаляет раздел или подраздел с идентификатором id, 5 – удаляет пользователя с логином name, 6 – снимает права модерирования с логина name, 7 – назначает права модерирования на логин name, 8 – выводит список зарегистрированных пользователей в гипертекстовом формате)

Функции:

check($value);

- возвращает «1» если строка value содержит цифровые символы, иначе «0».

refresh();

- делает редирект пользователя на модуль admin.php.

8. Контрольный пример

Интерфейс приложения выглядит следующим образом:

Рис. 8.1 - Вывод разделов и подразделов основного каталога электронной доски объявлений

Рис. 8.2 - Вывод всех объявлений из раздела «Компьютеры»

Рис. 8.3 - Вывод объявлений с применением фильтра на тип «Предложение»

Рассмотрим процесс регистрации нового пользователя, например belka:

Рис. 8.4 - Регистрация нового пользователя belka

Содержимое таблицы пользователей USERS до регистрации:


Рис. 8.5 - Дамп данных таблицы USERS до регистрации

Содержимое таблицы после регистрации:

Рис. 8.6 - Дамп данных таблицы USERS после регистрации

Последняя строка в таблице содержит добавленную учетную запись:

идентификатор, хэш-код пароля, контактную информацию и права доступа пользователя.

Рассмотрим процесс авторизации зарегистрированного пользователя belka:

Рис. 8.7 - Авторизация пользователя

Содержимое таблицы сессий SESSIONS после авторизации пользователя:

Рис. 8.8 - Дамп данных таблицы SESSIONS

Запись в таблице содержит идентификатор пользователя, код и время жизни сессии.