powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Простая голосовалка на странице
23 сообщений из 23, страница 1 из 1
Простая голосовалка на странице
    #38075766
kmdsanta
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго дня всем!
Я к сожалению вообще не знаком с java, поэтому, прежде чем устраивать какие то движения, хочу посоветоваться со знающими людьми: возможно ли при помощи javascript сделать простейшую голосовалку в виде двух символов (цифра - текущее значение и символ "+" - aля кнопка, увеличивающий текущее значение на 1 при нажатии), так что бы авторизированные посетители могли вставлять этот скрипт на страничку для проведения голосования, к примеру такого:

Таблица:
1 Вариант 1 3 +2 Вариант 2 0 +3 Вариант 3 13 +

соответственно другие авторизированные посетители нажимают на "+" и тем самым высказывая свое предпочтение

Заранее спасибо!
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38075774
kmdsanta
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
забыл добавить: как само значение кол-ва голосов будет храниться - не важно, но точно не в базе. Было бы идеально если скрип выдергивал текст из соседней слева колонки таблицы (это число), увеличивал и вставлял обратно уже новое (если такое возможно конечно)
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38075805
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Без хранилища - никак. Если в памяти сервера хранить - потеряется при перезагрузке, если предложенным тобой вариантом, то это замечательное поле для инсинуаций. В любом случае - это будет неправдоподобный счетчик. Поэтому хранилище обязательно. Хранение значений, скажем, в файле неудобно и сложно - прямо писать нельзя - это не потокобезопасно (может быть конкурентное обращение к файлу), а пул для записи в файл - не знаю, не слишком ли для такой задачи. Поэтому остается база. Кроме этого, надо базировать доступ к голосованию или на основе авторизации (один человек - один голос), либо на основе сессии (голосовать можно только раз из запущенного браузера), опять же, где-то надо хранить заходивших.

P.S. При чем тут Java?
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38075871
kmdsanta
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IDVsbruck, спасибо что отозвались!

Ну джаваскрипт по моему наилучшей инструмент для такой фишки. Если я ошибаюсь, поправьте. А по поводу хранения - в базу никак, если я предложу хранение в базе - идея сразу будет зарублена, т.к. такие таблички будут создаваться массово, а практического значения эти данные не имеют вообще никакого, идея только для повышения интереса (пользователи отдают голоса за ту команду, которая по их мнению выиграет). А почему мой вариант плохой? Разве нельзя написать функцию, которая будет считывать и затем менять содержание хтмл-страницы в определенной позиции? Эта цифра (кол-во голосов) нужна только визуально, больше ни для чего. Что касается "одноразового" голосования - это конечно нужно, но для начала и без такой проверки можно, т.к. кол-во голосов никому приоритета или выгоды не дает, факт многоразового голосования бессмыслен. Ну а в будущем, если идея приживется, разработчики уже будут вынуждены улучшить её :)
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38075894
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmdsanta, если один перец на своей компутере, в своём браузере проголосует, то другой перец на другом компутере этого не узнает никогда. Т.к. данные не передадутся на сервер, не сохранятся, не обновятся у другого перца.
Вам нужна голосовалка аля "Сам придумал, сам поржал"? :)
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38075897
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S. Вы не занкомы с Java, не знакомы c JavaScript. А с чем Вы вообще знакомы?
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38075916
kmdsanta
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
skyANA,

с базами данных, а по теме - ни с чем :( иначе я бы тут не писал

Вам нужна голосовалка аля "Сам придумал, сам поржал"? :)
такая конечно не нужна, но, откуда пользователь загружает эту страницу? Ну если написал на форуме сообщение "5" и нажал отправить, не один же я его вижу?? А потом нажал редактировать и исправил 5 на 6 и опять отправить...
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38075938
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmdsanta,

Элементарно делается, но нужно знать JavaScript

Сам делаю так:
JavaScript позволяет проголосовать 1 раз, если браузер поддерживает localStorage, иначе только просмотр результатов.
При выборе варианта JS записывает в localStorage браузера флаг, дергает POST-запросом сервер с номером варианта или с нулем.

Серверный скрипт, если приходит не 0, делает инкремент в обычном текстовом файле напротив нужного варианта.
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38075946
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
черт, случайно нажал Ctrl+Enter...

Далее:
серверный скрипт всегда возвращает результаты голосования как хотите сами (у меня в табличке).
JavaScript выводит окно с результатом.

Даже можно вставлять одинаковый html-код на любой странице для опроса понравилась-ли страница.
Остальное делает JavaScript - смотрит window.location.href и отправляет его серверному скрипту...
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38075997
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Яростный Меч,

кстати, как тебе идея вычислять клонов через localStorage?
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38076197
kmdsanta
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
asws,

спасибо, это уже ближе :)
но всё же, сервер может вместо того что бы делать изменения в файле, отредактировать мое сообщение?
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38076203
kmdsanta
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
по сути не надо даже цифры с кол-вом голосов, а просто например кнопка вместо "+", при нажатии которой изменяется её текст (счетчик нажатий)
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38076275
stopkran
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kmdsanta,

Когда два пользователя одновременно нажмут плюсы, у одного (кому больше повезёт) начнётся запись в файл на сервере немного раньше. А усилия второго пропадут даром, так как файл будет заблокирован.

Без использования БД у вас останутся примерно такие варианты: 1) на--ть на пользователей (ну, это же всё только для вида делается), пусть мучаются и тычут в кнопки, матерясь; 2) мучать серверный скрипт, проверяя в цикле доступность файла на запись до тех пор, пока не удастся записать новое значение.
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38076300
kmdsanta
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
stopkran,

я согласен что такой способ не самый удачный, но как я уже говорил, нужно простое решение для того что бы проверить пригодность идеи, и если она приживется, то тогда сделать все по уму. В как я уже понял, в данном случае простота не значит работоспособность :)
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38076342
stopkran
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну, для кого что проще. Я не вижу способа проще, чем БД. Сам делаю такие голосования на сайтах "в один клик", в одну таблицу можно запихать хоть сто тыщ голосований. Я просто не понимаю, почему файл кажется вам более простым решением: у файлов ведь должны быть имена, за ними надо следить, помнить о них, удалять ненужные... Одна таблица - или тыща файлов? (бррр...)
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38076371
kmdsanta
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
stopkran,

если честно я сразу склонялся к БД. Но реализовывать не особо хотят, т.к. не сильно актуально. А по сути там делов то: одна таблица с двумя поля: идентификатор голосовалки и значение (если я правильно понял возможности идентификации скрипта при вставки на страницу)
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38076751
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kmdsanta,
stopkran,

Ну насчет текстового файла - у меня свой счетчик посещений по сайтам пишет сначала все в текстовый файл (вернее 2 файла - четный и нечетный, смотря какой час),
а потом раз в час в БД из этого файла распределяет, заодно порверяя, да и мне всегда оперативно можно вмешаться перед записью в БД.
Есть сайты с несколькими тысячами посещений в день - пока проблем с текстовыми файлами небыло.

К тому-же голосовалка даже по всем страницам сайта может быть в одном файле, а не в нескольких
(одна строка на страницу сайта, сначала URL, потом варианты ответов через разделитель, например табуляцию).
Невероятно быстрый поиск, обновление файла и запись на диск.
БД по скорости проиграет файловой системе однозначно.
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38076788
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забыл добавить, что в случае голосовалки, читаю весь текстовый файл в переменную, меняю, потом перезаписываю файл.
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38076792
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
опять нажал Ctrl+Enter...

а в случае добавления записи делаю через fopen() в режиме добавления, чтобы не блокировалось.

Зато многих проблем нет и небудет.
Ну один из многих тысяч не сможет с первого раза голосонуть - в чем проблема-то?
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38077586
stopkran
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kmdsanta,
нет, там "делов" намного больше! :-) Вы нас тут не слушайте, попробуйте таки сделать рабочий кусок программы - голосование (хоть в сессии временный результат пока храните, для одного пользователя).
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38077603
stopkran
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
asws,
вариант с БД более управляемый. Что будет делать ваше голосование, если пользователь передумал и захотел через минуту проголосовать за пункт Б (вместо А)?

Да и по ресурсам: для скрипта дешевле передать в MySQL данные и забыть. В файл писать - больше памяти надо (и процессора, думаю, тоже). А скорость здесь (при записи) вряд ли самое критичное место. Или у вас там онлайн игрушка ?.. :-)
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38078313
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stopkran,

Не спорю.
Всего-лишь предложил как один из вариантов сделать быстро, если ВСЕ посетители могут голосовать БЕЗ авторизации.
Клиент захотел узнать мнение посетителей о меню и некоторых страницах своего сайта, так за полчаса ему запилил и там и там :)

Если чистить localStorage - голосовать можно бесконечно, так что без авторизации по-любому это несерьезно.
Поэтому и предусмотрел текстовый файл, чтобы в случае неадекватных накруток или по желанию Клиента быстро по FTP ручками править голоса...
...
Рейтинг: 0 / 0
Простая голосовалка на странице
    #38078338
stopkran
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
asws,
вам-то хорошо (с)... А вот мой любимый хостер с первого декабря заменил ftp на sftp - и теперь туда только на Файлзилле заехать можно (sftp, видимо, кривоватый там, ни один другой клиент пока не подключается). И поэтому, ceterum censeo, мне проще править БД (своим MySQL mini editor'ом).

С другой стороны, и задачи у наших голосований, видимо, разные. Я не против накруток :-). Голосование на большинстве сайтов моих клиентов - самоцель, чисто чтобы у посетителей глаза разбегались по разным функциям, и они подольше сидели на сайте. Нам не нужно знать всю страшную правду о ...
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Простая голосовалка на странице
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]