[Ищу] сортировка трафа по городам РФ

Тема в разделе "SEO Скрипты", создана пользователем CrazyWizard, 27 ноя 2011.

  1. CrazyWizard

    CrazyWizard Создатель

    Регистр.:
    11 янв 2008
    Сообщения:
    11
    Симпатии:
    0
    ищу шустрое платное решение для до 100к/сутки
     
  2. thoth777

    thoth777

    Регистр.:
    28 ноя 2008
    Сообщения:
    314
    Симпатии:
    98
    например есть же и бесплатные решения с geo ip
    http://www.simpletds.com/manuals
     
  3. CrazyWizard

    CrazyWizard Создатель

    Регистр.:
    11 янв 2008
    Сообщения:
    11
    Симпатии:
    0

    юзаю его, c таргетом по странам, но как его настроить именно ПО ГОРОДАМ?
     
  4. thoth777

    thoth777

    Регистр.:
    28 ноя 2008
    Сообщения:
    314
    Симпатии:
    98
    прошу прощения, я ступил
    Sutra TDS

    http://www.kytoon.com/sutra-tds.html

    есть еще вариант, если знаете php
    http://habrahabr.ru/blogs/webdev/112413/
    берете базу, определяете юзера по айпу и далее разруливаете
     
  5. CrazyWizard

    CrazyWizard Создатель

    Регистр.:
    11 янв 2008
    Сообщения:
    11
    Симпатии:
    0
    спасибо, с сутрой все ясно!

    но сейчас решил упростить задачу
    решение с хабры можно прикрутить к симпле?
    так чтобы, если москва - out1
    если иное - out2
     
  6. thoth777

    thoth777

    Регистр.:
    28 ноя 2008
    Сообщения:
    314
    Симпатии:
    98
    решение с хабры можно использовать прямо как есть, например
    совсем простенький скрипт
    в комплекте с той базой идет демо-скрипт (example.php)
    в нем все очень понятно, разобраться можно за 10 минут как получить город юзера


    PHP:
    <?
    // Подключаемся к базе данных
    $db_host "localhost";
    $db_user "";
    $db_password "";
    $db_database "geo";
    $link mysql_connect ($db_host$db_user$db_password);
    if (
    $link && mysql_select_db ($db_database)) {
        
    mysql_query ("set names utf8");
    } else {
        die (
    "db error");
    }

    // Подключаем библиотеку технических функций
    require_once ("./lib.php");

    // IP-адрес, который нужно проверить
    $ip "109.70.187.18"//тут айпишник юзера

    // Преобразуем IP в число
    $int ip2int($ip);

    $country_name "";
    $country_id 0;

    $city_name "";
    $city_id 0;

    // Ищем по российским и украинским городам
    $sql "select * from (select * from net_ru where begin_ip<=$int order by begin_ip desc limit 1) as t where end_ip>=$int";
    $result mysql_query($sql);
    if (
    $row mysql_fetch_array($result)) {
        
    $city_id $row['city_id'];
        
    $sql "select * from net_city where id='$city_id'";
        
    $result mysql_query($sql);
        if (
    $row mysql_fetch_array($result)) {
            
    $city_name $row['name_ru'];
            
    $country_id $row['country_id'];
        } else {
            
    $city_id 0;
        }
    }

    // Если не нашли - ищем страну и город по всему миру
    if (!$city_id) {
        
    // Ищем европейскую страну
        
    $sql "select * from (select * from net_euro where begin_ip<=$int order by begin_ip desc limit 1) as t where end_ip>=$int";
        
    $result mysql_query($sql);
        if (
    mysql_num_rows($result) == 0) {
            
    // Ищем страну в мире
            
    $sql "select * from (select * from net_country_ip where begin_ip<=$int order by begin_ip desc limit 1) as t where end_ip>=$int";
            
    $result mysql_query($sql);
        }
        if (
    $row mysql_fetch_array($result)) {
            
    $country_id $row['country_id'];
        }

        
    // Ищем город
        
    $city_name "";
        
    $city_id 0;
        
    // Ищем город в глобальной базе
        
    $sql "select * from (select * from net_city_ip where begin_ip<=$int order by begin_ip desc limit 1) as t where end_ip>=$int";
        
    $result mysql_query($sql);
        if (
    $row mysql_fetch_array($result)) {
            
    $city_id $row['city_id'];
            
    $sql "select * from net_city where id='$city_id'";
            
    $result mysql_query($sql);
            if (
    $row mysql_fetch_array($result)) {
                
    $city_name $row['name_ru'];
            }
        }
    }

    // Выводим результат поиска

    if ($country_id == 0) {
        echo 
    "Страна не определена";
    } else {
        
    // Название страны
        
    $sql "select * from net_country where id='$country_id'";
        
    $result mysql_query($sql);
        if (
    $row mysql_fetch_array($result)) {
            
    $country_name $row['name_ru'];
        }
        
    // Выводим
        
    echo $country_id." ".$country_name;
    }



    switch (
    $city_id){
    case 
    "0" {
     
    //город не определен
     
    break;
     }
    case 
    "ТУТ АДИ ГОРОДА" {
     
    header("Location: тут переадресация");
     break;
     }
    }




    ?>
    приведенный мной пример нужно еще допилить - получить айпишник юзера, поставить список нужных городов и адреса перенаправлений

    любой программер вам максимум за 10-15 баксов допилит