ЗА помошь по PHP - Даю шоху!

Discussion in 'PHP' started by kiborgg, 5 Nov 2009.

  1. kiborgg

    kiborgg Banned

    Joined:
    26 Jun 2009
    Messages:
    0
    Likes Received:
    8
    Reputations:
    -1
    Необходимо определять пользователь каторый зашол на сайт из РУ или нет.
     
    3 people like this.
  2. mr.The

    mr.The Elder - Старейшина

    Joined:
    30 Apr 2007
    Messages:
    1,080
    Likes Received:
    456
    Reputations:
    38
    _ttp://www.maxmind.com/app/php

    примеры там же. шоху ненадо.
     
    1 person likes this.
  3. Deathdreams

    Deathdreams Elder - Старейшина

    Joined:
    8 Nov 2008
    Messages:
    342
    Likes Received:
    116
    Reputations:
    5
    PHP:

    <?

    $ip 
    getenv('REMOTE_ADDR');
    $content = @file_get_contents('http://ipgeo-base.ru/?address='.$ip.'&search=%C8%F1%EA%E0%F2%FC'); 

    if(
    strpos($content"Санкт-Петербург")){

    echo 
    'из питера';

    }else{

    echo 
    ' не из питера';

    }

    ?>

    Работает
     
    #3 Deathdreams, 6 Nov 2009
    Last edited: 6 Nov 2009
    1 person likes this.
  4. h00lyshit!

    h00lyshit! [From Nobody To Root]

    Joined:
    10 Sep 2009
    Messages:
    289
    Likes Received:
    290
    Reputations:
    195
    Через Remote Addr получаешь ип и через file get contents c сайта его парсишь и выводишь результат, например отсюда http://smart-ip.net/tools/geoip
     
    #4 h00lyshit!, 6 Nov 2009
    Last edited: 6 Nov 2009
    5 people like this.
  5. kiborgg

    kiborgg Banned

    Joined:
    26 Jun 2009
    Messages:
    0
    Likes Received:
    8
    Reputations:
    -1

    Можеш написать?
     
  6. qW1zer

    qW1zer Member

    Joined:
    24 Aug 2009
    Messages:
    129
    Likes Received:
    15
    Reputations:
    5
    А если есть возможность то качаешь либу geoip и подключаешь к серверу,и все отлично работает!
     
  7. kiborgg

    kiborgg Banned

    Joined:
    26 Jun 2009
    Messages:
    0
    Likes Received:
    8
    Reputations:
    -1
    Возможность есть. Можешеш помоч реализовать? Или пример покажи.
     
  8. qW1zer

    qW1zer Member

    Joined:
    24 Aug 2009
    Messages:
    129
    Likes Received:
    15
    Reputations:
    5
    К сожалению примера живого сейчас нет,но ссылка осталась:
    http://pecl.php.net/package/geoip
    Там и мануал где-то был!
     
    1 person likes this.
  9. kiborgg

    kiborgg Banned

    Joined:
    26 Jun 2009
    Messages:
    0
    Likes Received:
    8
    Reputations:
    -1
    PHP:
    <?php
    include("geoip.inc");
    $gi geoip_open("./GeoIP.dat",GEOIP_STANDARD);
    $ip getenv("REMOTE_ADDR");
    $code geoip_country_code_by_addr($gi$ip);
    geoip_close($gi);

    if(
    $code == "RU")
    { echo 
    "<script>document.location='http://www.mail.ru'</script>";}
    ?>
    Рабочий вариант=)
     
    #9 kiborgg, 6 Nov 2009
    Last edited: 6 Nov 2009
  10. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    Не везде модуль geoip стоит :)
    PHP:
    <?php

    function CheckIP()
    {
        
    $ch curl_init('http://api.hostip.info/get_html.php?ip='.$_SERVER['REMOTE_ADDR']);
        
    curl_setopt($chCURLOPT_RETURNTRANSFER1);
        
    $res curl_exec($ch);
        if (
    preg_match('#Country: RUSSIAN FEDERATION (RU)#i'$res$matches))
            return 
    true;
        else
            return 
    false;
    }

    if(
    CheckIP())
    {
        echo 
    'Превед медвед, ты из России.';
    }
    else
    {
        echo 
    'Форбидден, акцесс тока русским.';
    }

    ?>
     
  11. LStr1ke

    LStr1ke Elder - Старейшина

    Joined:
    29 Jul 2009
    Messages:
    800
    Likes Received:
    145
    Reputations:
    73
    Его можно скачать и подключить как у kiborgg
     
  12. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    Немного хостингов дают права устанавливать модули :)
     
  13. mr.The

    mr.The Elder - Старейшина

    Joined:
    30 Apr 2007
    Messages:
    1,080
    Likes Received:
    456
    Reputations:
    38
    у geoip есть модуль, а есть php файл(_ttp://geolite.maxmind.com/download/geoip/api/php/geoip.inc), который, больше ничего для работы не требует, проме GeoIP.dat.
    PHP:
    include("geoip.inc"); 
    $gi geoip_open("./GeoIP.dat",GEOIP_STANDARD);
    линк, с всеми файлами и примерами: _ttp://geolite.maxmind.com/download/geoip/api/php/