За последние 24 часа нас посетили 22184 программиста и 1684 робота. Сейчас ищут 1686 программистов ...

Привязка к IP

Тема в разделе "Сделайте за меня", создана пользователем slowpoke59rus, 5 авг 2014.

  1. slowpoke59rus

    slowpoke59rus Новичок

    С нами с:
    14 июл 2014
    Сообщения:
    27
    Симпатии:
    0
    Здравия желаю, форумчане)

    Сложилась вот такая проблема:
    Есть скрипт:

    Вывод
    <?php
    if ($_COOKIE['codething_vote']=='1')
    drawResults();
    else
    drawForm();
    ?>

    Обработчик
    <?php
    include ("dbconnect.php");
    include ("function.php");

    $id = abs(intval($_REQUEST['act_vote_token']));

    if (in_array($id, array(2, 3, 4))) {

    setcookie ("codething_vote","1");
    mysql_query ("UPDATE vote SET votes = votes + 1 WHERE id = '$id'");

    drawResults();

    } else {
    echo "<div class=\"eror_vote\">Выберите ответ!</div>";
    drawForm();
    }

    ?>

    Проблема вот в чем: опрос привязываться только к куки, то есть если мы закроем и откроем свой браузер, то сможем снова проголосовать, мне нужно чтобы еще привязывался опрос к ip, ip записывался в mysql, и при выводе проверялся ip по базе - если есть - выводим результат, если нет ip в базе - выводим форму голосования.

    Зарание спасибо всем кто откликнулся, лучи добра в вашу жизнь)
     
  2. Deonis

    Deonis Старожил

    С нами с:
    15 фев 2013
    Сообщения:
    1.521
    Симпатии:
    504
    Буквально сегодня, в одной теме, я уже говорил о минусах привязки по IP. По поводу "закрыл, открыл браузер и опять голосуешь" - устанавливайте время жизни печеньки на период, который считаете оптимальным. Тогда "открыл/закрыл" - не прокатит. Но прокатит всё равно, если кукисы почисить. В качестве контрольки, можно использовать Local Storage. Далеко не все знают, как очистить его. Пардон за откровенность, но думаю, что и вы не знаете ;) Однако и это не спасет, если у человека несколько браузеров. На этот случай есть одна фишка, но о ней я рассказывать не буду, т.к. я сам и многие другие, приравнивают её к вирусу. Но даже, если бы я вам о ней и сказал, то и это бы не вылечило проблему, т.к. я спокойно зайду не из дому, а к примеру, от соседа или с работы.
    Делаем вывод: бороться с повторными голосованиями практически бесполезно. Наилучший способ - это давать возможность голосовать только зарегистрированным пользователям.
     
  3. slowpoke59rus

    slowpoke59rus Новичок

    С нами с:
    14 июл 2014
    Сообщения:
    27
    Симпатии:
    0
    спасибо) у меня как раз динамический ip)))
    что ж, буду заказывать регистрацию и авторизацию пользователей, еще раз спасибо)