[Include] GeoIP Include
#1

Короче есть инклюд один, народ.
Вот он: https://sampforum.blast.hk/showthread.php?tid=246461

Но он говорят работает некорректно

Поэтому я решил написать свой инклюд

Функции:

PHP Code:
GeoIPLookFor(playerid); // Получить информацию об игроке (страна - город). Рекомендую использовать в OnPlayerConnect
GetPlayerCountry(playerid); // Определить страну игрока
GetPlayerCity(playerid); // Определить город игрока 
Примечание:
HTTP запрос не очень быстрый, поэтому советую подождать ~1 сек после GeoIPLookFor, чтобы корректно использовать GetPlayerCountry / GetPlayerCity


Пример использования:

pawn Code:
public OnPlayerConnect(playerid)
{
    GeoIPLookFor(playerid);
    return 1;
}

public OnPlayerSpawn(playerid)
{
    new str[100];
   
    format(str, sizeof(str), "Ваша страна: %s   Ваш город: %s", GetPlayerCountry(playerid), GetPlayerCity(playerid));
    SendClientMessage(playerid, 0xFF0000AA, str);
    return 1;
}

Ссылки:
GeoIP Include R1

Если будут жалобы, предложения, просьба писать в эту тему
Reply
#2

Lol, I was looking for an INC like this, and found it here xD
Thanks
Reply
#3

Quote:
Originally Posted by FireCat
View Post
Lol, I was looking for an INC like this, and found it here xD
Thanks
It's good to see english people in russian section )

come to here anymore

Sorry for my English
Reply
#4

Большое спасибо вам. Использовать базу от maxmind это довольно долгий запрос в базу путём SQL даже если. А путём запроса HTTP я думаю значительно производительнее. Хотя может и ошибаюсь. Но всё же спасибо огромное вам.
Reply
#5

Ошибаетесь.
Что-бы сделать запрос на web сервер нужно:
1) Разрешить DNS имя, проще говоря получить IP адрес по имени домена.
2) Послать GET на сервер.
3) Получить ответ.
А помимо того, на том-же сервере идёт точно такой-же запрос к базе SQL.

У меня на HTTP запрос ушло ~200 мс, а к файлу maxmind 0...3 мс. Разница очевидна.
Единственный минус это то, что сервер кушает на ~30 Мб памяти больше.
Reply
#6

Спасибо за информацию. Если с базой данных определения города то вообще получается ~ 30 + 270 = от 300 до 310 mb примерно.
Maxmind в общем получается в таком случае конечно лучше, база на англ. языке вот одно только жаль. А вот по инклуду который описан выше, там город на русском. Видимо другая база данных используется. Хотя страна на англ. языке также. Хотя в принципе это не столь и важно думаю.
Reply
#7

База определения страны занимает ~1 Мб
База определения города занимает ~28 Мб

Откуда 300 Мб взялось?
Reply
#8

Спасибо!
Пригодилось...
Как я понял ты отредактирова немного стандартный инклюд?
Reply
#9

Splav, хорошо-бы сделать определение провайдера
Reply
#10

Quote:
Originally Posted by dinnamo1927
View Post
Спасибо!
Пригодилось...
Как я понял ты отредактирова немного стандартный инклюд?
Стандартный? Не, не слышал. В начале темы указано, какой инклюд брал за пример


Quote:
Originally Posted by [A_Tm
_Denis]Splav, хорошо-бы сделать определение провайдера
Сделать можно все.

На данном сайте провайдер не отображается. Нужно искать другой сайт
Reply
#11

Quote:
Originally Posted by Splav
View Post
На данном сайте провайдер не отображается. Нужно искать другой сайт
та ну
PHP Code:
IP адрес: *
Страна: *
Регион: *
Город: *
Широта: *
Долгота: *
Ваш браузер: *
Операционная система: *
Провайдер: * 
Reply
#12

[A_Tm]_Denis, не знаю, как у Вас, но у меня самого названия провайдера нету

Quote:

IP адрес: ---
Страна:
Регион: Нижегородская область
Город: Нижний Новгород
Широта: 56.329918
Долгота: 44.009193
Ваш браузер: Konqueror/Safari
Операционная система: Microsoft Windows XP
Провайдер: Провайдеры

Reply
#13

А у меня всё отлично показывает, видимо "косяк" сайта.

для примера пробил "левый" ip:
Quote:

IP адрес: 217.18.70.140
Страна: Netherlands
Регион: Zuid-Holland
Город: Schiedam
Широта: 51.9167
Долгота: 4.4
Ваш браузер: Mozilla/Netscape 6.x
Операционная система: Microsoft Windows NT
Провайдер: Qweb Internet Services B.V. Провайдеры

Из 10ти рандомных ip, показало провайдеры всех.Так что может проблема именно с вашим провайдером..
Reply
#14

Может быть
Reply
#15

Вчера работало, сегодня уже нет. О_о
Reply
#16

Вам может быть ссылку на базу данных предоставить? Оттуда.
Reply
#17

Quote:
Originally Posted by -Stranger-
View Post
База определения страны занимает ~1 Мб
База определения города занимает ~28 Мб

Откуда 300 Мб взялось?
Повтор. Простите. Выше вопрос задан собственно. Мы видимо не поняли как я поняла друг друга. Но база данных городов гораздо более занимает по МБ, ежели страны.

Вы НЕ правы!
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)