Информационный портал «SoftTime-INFO»
|
|
Система голосования Tabella (файловая) |
|
Вернуться в downloads
Система голосования Tabella (файловая)
По окончанию загрузки данной страницы будет выведено диалоговое окно с предложением
загрузить файл. Если этого не происходит вы можете загрузить архив по прямой ссылке Представляем вашему вниманию систему голосования, разработанную Федорченко Антоном Александровичем (antf@inbox.ru, http://sites.neeweb.com/antfsite).
Система голосования написана на языке PHP. Хранение результатов осуществляется в текстовых файлах.
Текущая версия системы голосования 3.2.0
Название скрипта:
Tabella (лат.) - дощечка, на которой древние римляне писали имя выбранного кандидата во время голосования.
Практические цели написания.
- Разобраться с особенностями написания систем интернет-голосования как вида web-приложений
- Познакомиться с такими технологиями как сессии и cookie
- Развитие своего стиля программирования
- Освоить GDLib
- Знакомство с ООП в PHP
Модули сторонних разработчиков:
В систему включена объектно-ориентированная библиотека JpGraph версии 1.4, которая позволяет
представлять различную информацию в виде графиков. Официальный сайт: http://www.aditus.nu/jpgraph/
Особенности:
- Два вида голосования: обычное, где посетитель может выбрать только один вариант, и рейтинговое, где посетитель может выбрать несколько вариантов.
- Система поддерживает несколько форм представления результатов голосования. Различаются простые (которые не требуют GDLib) формы и JpGraph-элементы. К простым формам относятся: таблицы, однотонные гистограммы, однотонные линейчатые диаграммы. JpGraph-элементы: круговая диаграмма, круговая диаграмма 3D, 3 вида гистограмм
- Возможность активировать сразу несколько голосований на сайте
- Возможность посмотреть архив голосований
- Несколько режимов защиты от накрутки:
Стандартный (a - cookie (опционально), b - сессии (опционально),c - ip (опционально)).
Стандартный + один пароль для всех (md5). Естественно их нужно предварительно разослать участникам.
Логин и пароль (md5) для каждого (предварительно разослать по email).
- Возможность установить режим защиты от накрутки для каждого голосования отдельно
- Данные хранятся в двухмерных (текстовых) файлах. Для каждого голосования создается основой файл,
где хранятся сам вопрос, варианты ответа и метаданные; файл для записи ip, файл для записи пароля,
файл для записи логинов и паролей
- Возможность добавить в систему другие языки. Для полной локализации системы необходимо перевести
файлы (admin/lng/*_lng.inc - сообщения и надписи административной панели, admin/tips/*_tips.inc,
lng/*_lng.inc - локализация клиентской части, _*_readme.txt)
Возможности системы администрирования:
- Система подсказок (отключается).
- Возможность добавлять новое голосование
- Возможность изменить тип голосование: обычное / рейтинговое
- Возможность редактировать голосования
- Возможность изменять режим защиты от повторного голосования (см выше). Для стандартного режима можно еще задать время хранения ip (в минутах) и cookie(в днях)
- Возможность скрыть/отобразить голосование
- Возможность направить голосование в архив
- Возможность удалить голосование. Основной файл не удаляется, а копируется в файл txt/backup.txt
- Возможность изменить позицию голосования (поднять опустить)
- Интерфейс для добавления/изменения пароля - для режима один пароль для всех
- Развитый интерфейс для режима один пароль для каждого, который позволяет:
1) Добавить логин и пароль. Особый интерфейс дает возможность загрузить целую серию логинов и паролей из файла (образец файла прилагается). Поддерживается отправка логина и пароля на адрес получателя (данная возможность не тестировалась).
2) Удалить добавленные логины и пароли.
3) Генерировать пароли автоматически. Данная функция использует базу пользователей (логинов). Созданные логины и пароли можно сразу же разослать участникам голосования. (данная функция не тестировалась).
4) Настроить параметры электронной почты для рассылки. Можно указать тему сообщения, адрес отправителя, а также модифицировать текст письма.
- Интерфейс настройки и генерации (GdLib) изображений-основ для простых форм отображения результатов.
- Интерфейс, позволяющий регулировать доступ посетителей к различным формам отображения результатов голосования.
- Интерфейсы настройки элементов JpGraph.
Инсталляция:
Установка: Распаковать содержимое архива в директорию localhost, или в директорию, которая ассоциируется с одним из виртуальных хостов. Изменить права доступа на 666 для корневого каталога системы голосования, а также для директорий graphconf, pictures, txt. Для запуска системы нужно открыть polls.php, для запуска административного блока - admin/index.php.
Возможные проблемы:
- Данная программа использует сессии, которые должны быть созданы до появления любой информации в окне браузера, поэтому подключите модуль session_start.inc (polls.php, vote.php) до вывода любой информации.
- Не все хостинги поддерживают стандартную PHP функцию отправки почты mail(), поэтому рассылка логинов и паролей может не работать.
- Не все хостинги поддерживают в полной мере (или не поддрерживают) GdLib, поэтому некоторые формы отображения результатов могут не работать. Вы можете их отключить через меню Графика -> Доступ
- Есть мнение, что не все версии GdLib корректно взаимодействуют с JpGraph
- Данная версия JpGraph работает только с PHP4 и не работает с PHP5
Возможности развития:
- Возможно, появятся новые формы представления результатов голосования.
- Мультиязыковой интерфейс.
Обратная связь
Загрузить новые версии системы голосования Tabella, а так же ряда других полезных Web-приложений можно
по адресу http://www.softtime.ru/info/downloads.php
На форуме IT-студии SoftTime по адресу http://www.softtime.ru/forum/
всегда можно найти поддержку по установке и сопровождению данного Web-приложения.
|
|