また、どのように成功しましたか
最初はそこにあるすべての種類のジオイプテーブルを思い出しましたが、これは以前より
縮小ベース
maxmind.com-サイト自体。 そこで、geoipデータベースを確認できます。
私の場合の選択肢はなくなりました-リスト全体を用意する必要がありますが、それは小さくなく、テーブルから選択を行います。 しばらくしてからテーブルを更新する必要があります。 一般的に怠lazは私に他の方法を探しさせました。 検索中に、興味深いサービスhttp://geoiptool.com/を見つけました。このサービスは、すべてのgeoipサービスの標準操作を実行しますが、 Googleマップにも適用します 。
とても面白い。 Habr- ここ
その結果、 http: //www.ip2city.ru/-IPアドレスのオープンベースを見つけました。 止まった。 彼を他のサービスと区別したのは、フォームのデータを提供する能力でした
field1 = value1
field2 = value2
...
単純な取得リクエストwww.ip2city.ru/ip2city.php?ip=xxx.xxxx.xxxx.xxxによって引き起こされるもの
そのようなデータはサードパーティのサーバーから簡単に受け入れられ、解析されます
$ IP = "00.00.00.00"; //またはどこからでもIP(私の場合はデータベースから)
$ lines = file( 'http://www.ip2city.ru/ip2city.php?ip='.$IP);
$ city = trim(str_replace( '='、 ''、strstr($行['0']、 '=')));
$ country = trim(str_replace( '='、 ''、strstr($行['4']、 '=')));
当然、このような作業では、PHPはサーバーからすべてのデータを受信するまで長時間ページを描画します(解析自体は高速です)ので、ページの読み込み後にIP->都市操作をお勧めします。
これが私の最初のトピックです。間違いをおaびします。 誰かが役に立つといいな