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

  • Автор темы Автор темы Guest
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest

суть вопроса: есть у мня голосовалка, нада защитить от накруток используя куки.
почитал книжки, суть не понял и че в итоге делал:
голосовать можно раз в сутки,
я создаю переменную с текушшим днем года
$y2k = date('z');
и пихаю в кук
setcookie('music',$y2k,time()+3600*12);
и нада теперь сравнить текущий лень недели и тот что в куке, если различные - чел иогет голосовать. что ни делаю - выкидает ошибки, не понимаю чиво означающие. поясните плз как лучше решить проблему
 
Чтобы тебе правильно ответили на вопрос, надо его правильно задать...Какая ошибка хотя бы напиши. И желательно делать меньше орфографических ошибок в вопросе, а то чтобы понять суть, пришлось три раза читать. Извиняюсь за резкость, но когда народ научится :D
 
Также при вставке кода, пжлст, отключай смайлы, а то смотри, что вышло у тебя.
 
Вот решение вопроса:
Это надо написать в самом начале файла:
<?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
 
2 Анципорович

Только по cookie мало. Сделай проверку хотябы ещё по ip адресу. Для большей точности.
 
Кстати, куки можно в браузере отключить (и будут спамить твое голосование). Предлагаю делать проверку на куки, а если не вышло ip.
 
Для примитивного голосования этого хватит, больше нечего кому-то делать..спамить обычное голосование, но не суть...будет время, я тебе и с IP напишу, может быть. Ещё раз повторюсь, обычно этого хватает.
 
Belfisher
больше нечего кому-то делать..спамить обычное голосование
Поверь находятся! А зачем же тогда делать защиту против повторного голосования?
 
Кстати можно ещё и email подтверждения сделать для полной практически надежности.
 
ну это если выборы президента через инет делать :D А так хватит IP+cookie, хотя, если мне захочется обойти эту защиту, то это очень просто делается... :D Товарищ, Анципорович П.П., как там Ваше голосование продвигается?
 
если мне захочется обойти эту защиту
Тебе, не спорю. Но какой-нить фанат мадоны, с выделенным каналом может захотеть проголосовать за нее 200 раз, чтоб поднять ее в рейтинге. Это очень даже реальная ситуация. А скрипт ему выдаст "фиг вам, фанатам".
 
Сейчас очень много прог, сменяющих IP(( У меня даж одна такая есть..))
 
STYX
Тебе, не спорю. Но какой-нить фанат мадоны, с выделенным каналом может захотеть проголосовать за нее 200 раз, чтоб поднять ее в рейтинге. Это очень даже реальная ситуация. А скрипт ему выдаст "фиг вам, фанатам".
Вот на mtv.ru и сделали подтверждение по email ^)
 
Belfisher
Да спасибо. Скачал с hotscripts скрипт голосования и посмотрел как там реализована защита. Сделал. Всё OK.
 
Belfisher
Ну и как там защита реализована?
наверное как он и хотел. по кукисам. хотя самое реальное сделать защиту по ip, email, cookie, UserID. Так точно задолбешься накручивать. А самое реальное сделать её платной :D
 
Belfisher
Бум ждать господина Анципоровича B) Посмотрим что ответит.
 
С кукисами пашет!!! Всё Ok. Сенкс 2 Belfisher
Супер чувак.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!