1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

PHP: запрет повторного голосования (cookie + IP)

Тема в разделе "Web - программирование", создана пользователем -, 8 ноя 2003.

Статус темы:
Закрыта.
  1. Гость

    Репутация:
    0
    суть вопроса: есть у мня голосовалка, нада защитить от накруток используя куки.
    почитал книжки, суть не понял и че в итоге делал:
    голосовать можно раз в сутки,
    я создаю переменную с текушшим днем года
    $y2k = date('z');
    и пихаю в кук
    setcookie('music',$y2k,time()+3600*12);
    и нада теперь сравнить текущий лень недели и тот что в куке, если различные - чел иогет голосовать. что ни делаю - выкидает ошибки, не понимаю чиво означающие. поясните плз как лучше решить проблему
     
  2. Belfisher

    Belfisher Гость

    Репутация:
    0
    Чтобы тебе правильно ответили на вопрос, надо его правильно задать...Какая ошибка хотя бы напиши. И желательно делать меньше орфографических ошибок в вопросе, а то чтобы понять суть, пришлось три раза читать. Извиняюсь за резкость, но когда народ научится :D
     
  3. STYX

    STYX Гость

    Репутация:
    0
    Также при вставке кода, пжлст, отключай смайлы, а то смотри, что вышло у тебя.
     
  4. Belfisher

    Belfisher Гость

    Репутация:
    0
    Вот решение вопроса:
    Это надо написать в самом начале файла:
    <?php
    if (isset($submit)) {
    $date=date('z');
    setcookie('old_date', $date, time()+3600*12);
    }
    ?>
    Тут начало вывода текста в броузер....
    <?
    if (isset($old_date)) {
    print("Вы уже голосовали");
    }
    else {
    ?>
    <form action="<? $PHP_SELF ?>" method="post">
    Здесь сам опрос!!!
    <input type="submit" name="submit" value="Голосовать">
    </form>
    <?
    }
    ?>
    Всё очень просто, устанавливается значение $old_date на сутки, потом идёт проверка, если оно установлено, то Вы голосовали, если нет, то выводится форма. По истечении суток после голосования кука удаляется, т.е. можно опять голосовать.

    КАжется без ошибок написал... :D
     
  5. admin

    admin Well-Known Member

    Репутация:
    0
    Регистрация:
    8 авг 2003
    Сообщения:
    2.754
    Симпатии:
    1
    2 Анципорович

    Только по cookie мало. Сделай проверку хотябы ещё по ip адресу. Для большей точности.
     
  6. STYX

    STYX Гость

    Репутация:
    0
    Кстати, куки можно в браузере отключить (и будут спамить твое голосование). Предлагаю делать проверку на куки, а если не вышло ip.
     
  7. Belfisher

    Belfisher Гость

    Репутация:
    0
    Для примитивного голосования этого хватит, больше нечего кому-то делать..спамить обычное голосование, но не суть...будет время, я тебе и с IP напишу, может быть. Ещё раз повторюсь, обычно этого хватает.
     
  8. STYX

    STYX Гость

    Репутация:
    0
    Belfisher
    Поверь находятся! А зачем же тогда делать защиту против повторного голосования?
     
  9. admin

    admin Well-Known Member

    Репутация:
    0
    Регистрация:
    8 авг 2003
    Сообщения:
    2.754
    Симпатии:
    1
    Кстати можно ещё и email подтверждения сделать для полной практически надежности.
     
  10. Belfisher

    Belfisher Гость

    Репутация:
    0
    Это больше защита от дурака :D
     
  11. Belfisher

    Belfisher Гость

    Репутация:
    0
    ну это если выборы президента через инет делать :D А так хватит IP+cookie, хотя, если мне захочется обойти эту защиту, то это очень просто делается... :D Товарищ, Анципорович П.П., как там Ваше голосование продвигается?
     
  12. STYX

    STYX Гость

    Репутация:
    0
    Тебе, не спорю. Но какой-нить фанат мадоны, с выделенным каналом может захотеть проголосовать за нее 200 раз, чтоб поднять ее в рейтинге. Это очень даже реальная ситуация. А скрипт ему выдаст "фиг вам, фанатам".
     
  13. Belfisher

    Belfisher Гость

    Репутация:
    0
    Сейчас очень много прог, сменяющих IP(( У меня даж одна такая есть..))
     
  14. admin

    admin Well-Known Member

    Репутация:
    0
    Регистрация:
    8 авг 2003
    Сообщения:
    2.754
    Симпатии:
    1
    STYX
    Вот на mtv.ru и сделали подтверждение по email ^)
     
  15. Гость

    Репутация:
    0
    Belfisher
    Да спасибо. Скачал с hotscripts скрипт голосования и посмотрел как там реализована защита. Сделал. Всё OK.
     
  16. Belfisher

    Belfisher Гость

    Репутация:
    0
    Ну и как там защита реализована?
     
  17. admin

    admin Well-Known Member

    Репутация:
    0
    Регистрация:
    8 авг 2003
    Сообщения:
    2.754
    Симпатии:
    1
    Belfisher
    наверное как он и хотел. по кукисам. хотя самое реальное сделать защиту по ip, email, cookie, UserID. Так точно задолбешься накручивать. А самое реальное сделать её платной :D
     
  18. Belfisher

    Belfisher Гость

    Репутация:
    0
    По кукисам я же ему написал..
     
  19. admin

    admin Well-Known Member

    Репутация:
    0
    Регистрация:
    8 авг 2003
    Сообщения:
    2.754
    Симпатии:
    1
    Belfisher
    Бум ждать господина Анципоровича B) Посмотрим что ответит.
     
  20. Гость

    Репутация:
    0
    С кукисами пашет!!! Всё Ok. Сенкс 2 Belfisher
    Супер чувак.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей