Как сделать голосовалку для сайта на PHP?
Приветствую!
Мне необходимо разместить на сайте небольшую голосовалку. Возможно, ли это реализовать на простом HTML-сайте (без использования движка)? Если да, то как?Приветствую!
Мне необходимо разместить на сайте небольшую голосовалку. Возможно, ли это реализовать на простом HTML-сайте (без использования движка)? Если да, то как?
Ответы: 10
Приветствую, спасибо за скрипт. единственный вопрос с накруткой голосов. COOKIE не очень хорошо работают, может возможно добавить защиту по IP?
Добрый день. Переменная
$current
отвечает за то, какой pool-опрос отображается. Не подскажите как сделать переключатель для перехода к следующему опросу? И как добавить больше вопросов и ответов в один опрос, буду очень признателен.Простая инструкция по созданию опросов на сайте (данные сохраняются не в базу, а в обычный текстовый файл).
Данный алгоритм можно использовать для любого сайта. Не важно работает он под управлением CMS или это какая-то самописанная система. Работать созданная система опроса на сайте будет через AJAX и использовать COOKIE (для защиты от накрутки).
Скриншоты, т.е. как будет выглядеть блока опроса и его результаты на сайте:
poll-vote.php
(если конечно он не находится в той же директории, в которой расположена страница). Если на сайте не используется Bootstrap, то тогда необходимо написать стили для оформления опроса и результатов голосования.2) Вставить следующий фрагмент сценария JavaScript на страницу (после подключения jQuery):
В переменной
3) Теперь перейдём к серверу. Здесь используются 2 файла php (pathToPolls
указать путь к файлуpolls.php
.polls.php
иpoll-vote.php
).В файле
polls.php
хранятся все опросы в формате ассоциативного массива (каждый опрос – это объект). Синтаксис опроса:Для того чтобы добавить новый опрос, необходимо продублировать этот код и ввести необходимые значения в соответствующие переменные.
Установка, какой опрос показывать на страницах управляется с помощью значения переменной$current
: Это очень удобно, т.к. ничего не надо править на страницах. Т.е. для того, чтобы установить показ другого опроса на всех страницах сайта достаточно будет просто указать необходимый ключ опроса в качестве значения этой переменной.Также этот файл возвращает результаты, если пользователь уже проголосовал на сайте (для этого используются COOKIE).
Второй файл (
poll-vote.php
) записывает данные голосования в файлpoll-results.txt
, который создаётся по умолчанию в той же директории, в которой расположены эти 2 php-файла. В качестве формата данных используется ассоциативный массив. Кроме этого данный файл после того как пользователь проголосовал ещё возвращает результаты голосования (в качестве ответа).Код файла
Код файлаpolls.php
:poll-vote.php
: Скачать готовый пример можно с Яндекс Диска.Проект на Githib: https://github.com/itchief/simple-poll
Александр, спасибо. Отличный вариант. Обязательно попробую в действии.
Здравствуйте. Такой вопрос – можно ли сделать так, чтобы, помимо записи результатов в текстовый файл, они ещё скидывались на указанную почту? Ну или вместо файла результаты на почту.
Я предполагаю, что для этого надо в php файлеpoll-vote.php
изменить или добавить параметры для отправки на почту.Но, к сожалению, знаний мне для этого ещё недостаточно. Подскажите, мои рассуждения верны? И, если верны, прошу подсказать, что и куда вписать)
А также вопрос касаемо тайминга. Т.е. мне надо, чтобы опросы сбрасывались во вторник после 20:00, в четверг после 20:00 и в субботу тоже после 20:00.
Если это, конечно, возможно.Привет! Чтобы это реализовать, лучше создать новый php-файл, который будет брать данные из
poll-results.txt
, формировать нужное тело письма и отправлять его адресатам. Запускать этот файл можно через планировщика cron (обычно имеется на всех виртуальных хостингах), указав в нём нужные дни и нужное время.А подскажете, как это сделать? А то я недавно в программировании. Освоил пока HTML, по нужде залез в CSS, но Java и PHP для меня пока тёмный лес(
Здравствуйте! Простую голосовалку можно реализовать и без движка. Но всё равно потребуется написать серверный скрипт и выбрать хранилище, в котором сохранять данные голосования (как минимум текстовый файл).
Приветствую Александр. Я как раз и думал о простом текстовом файле для сохранения данных голосования. Подскажите, по скрипту есть какие-то шаблоны? Где можно узнать поподробнее?