GeoLocation API [закрыто]

Я только что столкнулся с этим замечательным API:http://ipinfodb.com/ip_location_api.php

Тем не менее, я хотел бы также восстановить континент. Возможно ли это даже как я не могу найти это.

Может быть, есть другой бесплатный API, который предложит город, страну и континент? Я пробовал Googles AJAX API, но они неНе могу предложить континент.

Может, мне придется просто преобразовать то, что у меня уже есть, в континенты, как ?!

Я надеюсь, что это неСлишком субъективно!

Спасибо всем

Ответы на вопрос(4)

http://www.geobytes.com/IpLocator.htm?GetLocation

Я использую их онлайн интерфейс все время, никогда не пробовал API.

Только 200 стран и только 6 континентов, поэтому я хотел бы спросить, зачем вам нужен веб-сервис для определения этой информации ... если только вы не планируете получать много пользователей из стран, которые настолько политически нестабильны, они поменяют имена или прекратят свое существование до того, как это сделает ваше приложение. Просто держите статичный список.

Кроме того, не все страны находятся на континенте. Новая Зеландия, например, нечасть Австралии (по крайней мере, согласно Википедии).

Если вы можете определить пользователяВ вашей стране программно вы располагаете достаточной информацией для поиска своего континента в статическом списке, которым вы владеете. Вам понадобится час, чтобы собрать эту информацию самостоятельно и поместить ее в базу данных или файл XML, и она будет редко меняться. Вы'Мы уже потратили почти столько времени, пытаясь понять, как определить континент динамически.

 Rex M16 авг. 2009 г., 02:25
@Abs см. Мои правки (для уточнения внесены комментарии в ответ)
 Abs16 авг. 2009 г., 02:29
Спасибо Рекс. Я понимаю. Просто я ленивый и надеялся, что все будет готово и упаковано для меня!
 Abs16 авг. 2009 г., 02:13
Какая последняя информация? Вы имеете в виду континент? Мне нужно определить это, так как я хотел бы выполнять различные функции в зависимости от местоположения пользователей на континенте, а затем переходить к разным странам, городам и т. Д. Мой вопрос может быть простым, но моя точка зрения не такова.т. :)
Решение Вопроса

XXCountryCode для соответствующего континента? не должен»Это будет слишком сложно, поскольку есть только около 200 стран и 5 или 7 континентов.

РЕДАКТИРОВАТЬ: я не знаю, такие подготовленные базы данных в PHP, но вотjson_encode»d массив для всех стран с кодом страны в качестве ключа и именем континента в качестве значения:

$json = '{"AD":"Europe","AE":"Asia","AF":"Asia","AG":"North America","AI":"North America","AL":"Europe","AM":"Asia","AN":"North America","AO":"Africa","AQ":"Antarctica","AR":"South America","AS":"Australia","AT":"Europe","AU":"Australia","AW":"North America","AZ":"Asia","BA":"Europe","BB":"North America","BD":"Asia","BE":"Europe","BF":"Africa","BG":"Europe","BH":"Asia","BI":"Africa","BJ":"Africa","BM":"North America","BN":"Asia","BO":"South America","BR":"South America","BS":"North America","BT":"Asia","BW":"Africa","BY":"Europe","BZ":"North America","CA":"North America","CC":"Asia","CD":"Africa","CF":"Africa","CG":"Africa","CH":"Europe","CI":"Africa","CK":"Australia","CL":"South America","CM":"Africa","CN":"Asia","CO":"South America","CR":"North America","CU":"North America","CV":"Africa","CX":"Asia","CY":"Asia","CZ":"Europe","DE":"Europe","DJ":"Africa","DK":"Europe","DM":"North America","DO":"North America","DZ":"Africa","EC":"South America","EE":"Europe","EG":"Africa","EH":"Africa","ER":"Africa","ES":"Europe","ET":"Africa","FI":"Europe","FJ":"Australia","FK":"South America","FM":"Australia","FO":"Europe","FR":"Europe","GA":"Africa","GB":"Europe","GD":"North America","GE":"Asia","GF":"South America","GG":"Europe","GH":"Africa","GI":"Europe","GL":"North America","GM":"Africa","GN":"Africa","GP":"North America","GQ":"Africa","GR":"Europe","GS":"Antarctica","GT":"North America","GU":"Australia","GW":"Africa","GY":"South America","HK":"Asia","HN":"North America","HR":"Europe","HT":"North America","HU":"Europe","ID":"Asia","IE":"Europe","IL":"Asia","IM":"Europe","IN":"Asia","IO":"Asia","IQ":"Asia","IR":"Asia","IS":"Europe","IT":"Europe","JE":"Europe","JM":"North America","JO":"Asia","JP":"Asia","KE":"Africa","KG":"Asia","KH":"Asia","KI":"Australia","KM":"Africa","KN":"North America","KP":"Asia","KR":"Asia","KW":"Asia","KY":"North America","KZ":"Asia","LA":"Asia","LB":"Asia","LC":"North America","LI":"Europe","LK":"Asia","LR":"Africa","LS":"Africa","LT":"Europe","LU":"Europe","LV":"Europe","LY":"Africa","MA":"Africa","MC":"Europe","MD":"Europe","ME":"Europe","MG":"Africa","MH":"Australia","MK":"Europe","ML":"Africa","MM":"Asia","MN":"Asia","MO":"Asia","MP":"Australia","MQ":"North America","MR":"Africa","MS":"North America","MT":"Europe","MU":"Africa","MV":"Asia","MW":"Africa","MX":"North America","MY":"Asia","MZ":"Africa","NA":"Africa","NC":"Australia","NE":"Africa","NF":"Australia","NG":"Africa","NI":"North America","NL":"Europe","NO":"Europe","NP":"Asia","NR":"Australia","NU":"Australia","NZ":"Australia","OM":"Asia","PA":"North America","PE":"South America","PF":"Australia","PG":"Australia","PH":"Asia","PK":"Asia","PL":"Europe","PM":"North America","PN":"Australia","PR":"North America","PS":"Asia","PT":"Europe","PW":"Australia","PY":"South America","QA":"Asia","RE":"Africa","RO":"Europe","RS":"Europe","RU":"Europe","RW":"Africa","SA":"Asia","SB":"Australia","SC":"Africa","SD":"Africa","SE":"Europe","SG":"Asia","SH":"Africa","SI":"Europe","SJ":"Europe","SK":"Europe","SL":"Africa","SM":"Europe","SN":"Africa","SO":"Africa","SR":"South America","ST":"Africa","SV":"North America","SY":"Asia","SZ":"Africa","TC":"North America","TD":"Africa","TF":"Antarctica","TG":"Africa","TH":"Asia","TJ":"Asia","TK":"Australia","TM":"Asia","TN":"Africa","TO":"Australia","TR":"Asia","TT":"North America","TV":"Australia","TW":"Asia","TZ":"Africa","UA":"Europe","UG":"Africa","US":"North America","UY":"South America","UZ":"Asia","VC":"North America","VE":"South America","VG":"North America","VI":"North America","VN":"Asia","VU":"Australia","WF":"Australia","WS":"Australia","YE":"Asia","YT":"Africa","ZA":"Africa","ZM":"Africa","ZW":"Africa"}';

Просто позвоните с помощью:

echo '<pre>';
print_r(json_decode($json, true));
echo '</pre>';
 Abs16 авг. 2009 г., 19:49
Потрясающие!! Откуда вы взяли этот взгляд и насколько точным он кажется?
 Alix Axel17 авг. 2009 г., 01:34
AFAIK это 's надежный источник, я нашел его доступным на веб-сервисе (services.sapo.pt/GIS/GetCountriesЯ просто соскоблил и перевел названия континентов на английский.
 Abs16 авг. 2009 г., 02:12
Это именно то, что я пытаюсь сделать, но в Сурли уже есть база данных, или в PHP есть встроенная функция для этого?

MaxMind GeoLite Country а такжеMaxMind GeoLite City.

Если оно'Континент ли тыв основном после (я неЕсли вы не знаете, хранит ли это GeoLite), вы всегда можете сопоставить коды стран из базы данных GeoLite с кодами странмировая база данных который MySql использует в качестве примера базы данных. Это имеет континент для каждой страны хранится.

 karim7916 авг. 2009 г., 02:23
@Abs - база данных mysql world имеет континенты. Если базы данных GeoLite имеют коды стран (убежище)проверил) это может сработать.
 Abs16 авг. 2009 г., 02:28
Хорошая точка зрения. Я думаю, что это так. Дорогой Бог, я простак! :)
 Abs16 авг. 2009 г., 02:14
Я пробовал этих ребят, и их реализация не очень хорошая, точность неТак здорово для бесплатной функции. Но ты прав, это лучшее, что яЯ сталкивался, но мне нужно что-то лучше и легче.

Ваш ответ на вопрос