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

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

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

Belfisher

Гость
#2
Чтобы тебе правильно ответили на вопрос, надо его правильно задать...Какая ошибка хотя бы напиши. И желательно делать меньше орфографических ошибок в вопросе, а то чтобы понять суть, пришлось три раза читать. Извиняюсь за резкость, но когда народ научится :D
 
S

STYX

Гость
#3
Также при вставке кода, пжлст, отключай смайлы, а то смотри, что вышло у тебя.
 
B

Belfisher

Гость
#4
Вот решение вопроса:
Это надо написать в самом начале файла:
<?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
 

admin

Well-Known Member
08.08.2003
2 754
1
#5
2 Анципорович

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

STYX

Гость
#6
Кстати, куки можно в браузере отключить (и будут спамить твое голосование). Предлагаю делать проверку на куки, а если не вышло ip.
 
B

Belfisher

Гость
#7
Для примитивного голосования этого хватит, больше нечего кому-то делать..спамить обычное голосование, но не суть...будет время, я тебе и с IP напишу, может быть. Ещё раз повторюсь, обычно этого хватает.
 
S

STYX

Гость
#8
Belfisher
больше нечего кому-то делать..спамить обычное голосование
Поверь находятся! А зачем же тогда делать защиту против повторного голосования?
 

admin

Well-Known Member
08.08.2003
2 754
1
#9
Кстати можно ещё и email подтверждения сделать для полной практически надежности.
 
B

Belfisher

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

STYX

Гость
#12
если мне захочется обойти эту защиту
Тебе, не спорю. Но какой-нить фанат мадоны, с выделенным каналом может захотеть проголосовать за нее 200 раз, чтоб поднять ее в рейтинге. Это очень даже реальная ситуация. А скрипт ему выдаст "фиг вам, фанатам".
 
B

Belfisher

Гость
#13
Сейчас очень много прог, сменяющих IP(( У меня даж одна такая есть..))
 

admin

Well-Known Member
08.08.2003
2 754
1
#14
STYX
Тебе, не спорю. Но какой-нить фанат мадоны, с выделенным каналом может захотеть проголосовать за нее 200 раз, чтоб поднять ее в рейтинге. Это очень даже реальная ситуация. А скрипт ему выдаст "фиг вам, фанатам".
Вот на mtv.ru и сделали подтверждение по email ^)
 

Гость
#15
Belfisher
Да спасибо. Скачал с hotscripts скрипт голосования и посмотрел как там реализована защита. Сделал. Всё OK.
 

admin

Well-Known Member
08.08.2003
2 754
1
#17
Belfisher
Ну и как там защита реализована?
наверное как он и хотел. по кукисам. хотя самое реальное сделать защиту по ip, email, cookie, UserID. Так точно задолбешься накручивать. А самое реальное сделать её платной :D
 

admin

Well-Known Member
08.08.2003
2 754
1
#19
Belfisher
Бум ждать господина Анципоровича B) Посмотрим что ответит.
 

Гость
#20
С кукисами пашет!!! Всё Ok. Сенкс 2 Belfisher
Супер чувак.
 
Статус
Закрыто для дальнейших ответов.