2017-07-14 4 views
1

自分のIPアドレスからユーザーの都市名、州名、国名などの情報を取得し、その場所に応じて投稿を表示したいと考えています。 PHP codeigniterでこれを行うには、信頼性の高い方法がありますか?私はサーバー側のスクリプトにPHP codeigniterを、データベースにMySQLを使用しています。ありがとうcodeigniterでジオ​​ロケーションを有効にする

+4

はStackOverflowのへようこそ。このタイプの質問は、StackOverflowのトピック外です(_おそらく閉じています_)。あなたの質問を投稿する前に[ツアー](https://stackoverflow.com/tour)を通過し、[ヘルプセクション](http://stackoverflow.com/help)にアクセスして[What質問のタイプは質問しないでください。](http://stackoverflow.com/help/on-topic)。最後に、あなたの質問がルールに合っていると確信できるのであれば、[よくある質問]を読んで、有用で整然としたものを作ることができるようにしてください(http://stackoverflow.com/help/how-to-ask)。トピック上の質問。 –

+0

@gp_sfloverこれはどのように「話題外ですか?私は実際の言葉を見ていない*ここでは "私にライブラリを推薦する" *。問題は単に、OPが少なくとも "ジオロケーション"をしたいと考えているが、その背後にあるプロセスを理解していないと言われているようだ。おそらく、図書館へのリンクを外したり、「図書館/サービスを試したことがありますか?それを使用する方法を知っていますか?」と質問すると、生産性が向上します。 "ルール"が進む限り、あなたと他の人は、実際にルールが何であるかを理解していないようです。おそらく重複した質問ですが、誰もあなたに一票を投じるのに気をつけませんでした。 –

+0

私の場合は、https://www.google.com/search?q=php+geolocationのリソースを検索するだけです。特定の選択されたメソッドについて質問がある場合は、代わりにそのコードの実装について質問する必要があります。 –

答えて

-1

こんにちは、これを行うには外部のサービスに連絡する必要があります。

コードシナーでは、$this->input->ip_address()を使用してIPアドレスを取得し、IP Findなどの無料サービスに渡して位置情報を取得することができます。

<?php 
$request_uri = 'https://ipfind.co'; 
$ip_address = $this->input->ip_address(); 
$auth = 'YOUR_API_KEY_HERE'; 
$url = $request_uri . "?ip=" . $ip_address; 
$document = file_get_contents($url); 
$result = json_decode($document); 
?> 

結果:

{ 
ip_address: "8.8.8.8", 
country: "United States", 
country_code: "US", 
continent: "North America", 
continent_code: "NA", 
city: null, 
county: null, 
region: null, 
region_code: null, 
timezone: null, 
owner: null, 
longitude: -97.822, 
latitude: 37.751, 
currency: "USD", 
languages: [ 
"en-US", 
"es-US", 
"haw", 
"fr" 
] 
} 
関連する問題