Подскажите, что мне делать?

Тема в разделе "PHP", создана пользователем sergey_prusov, 9 авг 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. sergey_prusov

    sergey_prusov

    Регистр.:
    31 окт 2008
    Сообщения:
    205
    Симпатии:
    3
    Имею сервис контекстной рекламы и pop-up. Так вот чтобы защитить его от накруток сделал такую защиту. К примеру какая-нибудь рекламируемая ссылка выглядит вот так

    HTML:
    http://сайт/click/strike.php?id=21&sid=8&hash=e14f42be7276e8550692a701f3a4ec8b
    объясняю где что
    id - сайт
    sid - реклама
    hash - моя защита


    но когда я захожу на сайт где размещена моя реклама hash всегда имеет вот такой вид hash=e14f42be7276e8550692a701f3a4ec8b (т.е не меняется)Конечно если пользователь тыкает 2й раз то он не защитывается, но вот если кинуть данную ссылку в САР то сами представляете что будет((((


    мне надо сделать так чтобы он менялся:) но как я незнаю


    вот как выглядит сам hash

    PHP:
    $hash=md5($key.$_SERVER['REMOTE_ADDR']);
    if (
    $_GET['hash']!=$hash)
        {
            
    $f=fopen("click/log_strike.txt","a");
            
    fputs($f,$wm_id."\t".$id."\t".$_SERVER['REMOTE_ADDR']."\t".date("Y-m-d H:i:s")."\t".$_SERVER['HTTP_REFERER']."\t".$_SERVER['HTTP_USER_AGENT']."\n");
            
    fclose($f);
        }


    если что-то понадобиться выложу! Помогите уж очень надо это реализовать:thenks::bc:
     
  2. omfg

    omfg

    Регистр.:
    4 авг 2009
    Сообщения:
    159
    Симпатии:
    46
    Мне кажется можешь делать немного по-другому.
    У тебя есть таблица с сайтами, так?
    Каждому урлу сайта у тебя присвоен id.
    Просто смотри в скрипте реферер, с которого пришли, сравнивай с урлой по id и если совпало - то засчитывай.
     
  3. sergey_prusov

    sergey_prusov

    Регистр.:
    31 окт 2008
    Сообщения:
    205
    Симпатии:
    3
    Я просто в этом не силен((( пока тока смог разобраться что сделал с hash. Если можите реализуйте с hash:thenks:
     
  4. omfg

    omfg

    Регистр.:
    4 авг 2009
    Сообщения:
    159
    Симпатии:
    46
    Как то странно ты генеришь хэш. Его нужно геннерить именно из урлы сайта я думаю, тогда бы ты мог проверять следующим образом:
    PHP:
    if($_GET['hash']!=md5($key.$_SERVER['HTTP_REFERER']))
     
  5. sergey_prusov

    sergey_prusov

    Регистр.:
    31 окт 2008
    Сообщения:
    205
    Симпатии:
    3
    так вообще его нет((((

    Добавлено через 27 минут
    может я не так объяснил еще.... надо чтобы этот самый hash при обновлении страницы менялся

    Добавлено через 37 минут
    или как мне это реализовать чтобы даже для одного ip адреса менялся hash ссылки даже при обновлении страницы......
     
  6. betatest

    betatest

    Регистр.:
    3 дек 2007
    Сообщения:
    517
    Симпатии:
    127
    вообще у тебя при одинаковых входных данных один код и должен быть

    ИМХО вариант - это добавлять какой нидь рандом либо через яву, либо к этому коду, либо вообще генерить рандомом по своему алгу с добавлением еще рнд параметра
     
    irk нравится это.
  7. omfg

    omfg

    Регистр.:
    4 авг 2009
    Сообщения:
    159
    Симпатии:
    46
    А если подумать? :)
    И чего он добьется если сгенерит рэндом? :) ни-че-го
     
  8. sergey_prusov

    sergey_prusov

    Регистр.:
    31 окт 2008
    Сообщения:
    205
    Симпатии:
    3
    Люди помогите а(((((( может к этому hash прикрутить чтонибудь что бы выполняло при обновлении страницы какой-нибудь код для каждой ссылки разумеется свой....ченить типо 12132k31j212k312kl3j12345345j3h к примеру и постоянно менялся
     
  9. saen

    saen

    Регистр.:
    6 авг 2006
    Сообщения:
    756
    Симпатии:
    129
    PHP:
    function generatehash($length 32$charset "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz")
        {
            
    $hash "";
            for (
    $i 0$i $length; ++$i)
            {
                
    $hash .= $charset[rand(0strlen($charset) - 1)];
            }
            return 
    $hash;
        }
     
  10. sergey_prusov

    sergey_prusov

    Регистр.:
    31 окт 2008
    Сообщения:
    205
    Симпатии:
    3
    Попробовал данную реализацию.... при замене кода на Ваш hash-а вообще нет((( хотя думаю мы на верном пути)))
     
Статус темы:
Закрыта.