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

CrazyWizard

Создатель
Регистрация
11 Янв 2008
Сообщения
11
Реакции
0
ищу шустрое платное решение для до 100к/сутки
 
юзаю его, c таргетом по странам, но как его настроить именно ПО ГОРОДАМ?
прошу прощения, я ступил
Sutra TDS



есть еще вариант, если знаете php

берете базу, определяете юзера по айпу и далее разруливаете
 
прошу прощения, я ступил
Sutra TDS
*** скрытое содержание ***
есть еще вариант, если знаете php
*** скрытое содержание ***
берете базу, определяете юзера по айпу и далее разруливаете

спасибо, с сутрой все ясно!

но сейчас решил упростить задачу
решение с хабры можно прикрутить к симпле?
так чтобы, если москва - out1
если иное - out2
 
спасибо, с сутрой все ясно!
но сейчас решил упростить задачу
решение с хабры можно прикрутить к симпле?
так чтобы, если москва - out1
если иное - out2
решение с хабры можно использовать прямо как есть, например
совсем простенький скрипт
в комплекте с той базой идет демо-скрипт (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 баксов допилит
 
Назад
Сверху