登録時に位置情報を取得できるようになりました.

みんなの学び場

キーワードから,位置情報を取得することに成功しました.
これにより,新しく講義を登録する際に,開催地をキーに自動的に位置情報を取得します*1


利用させてもらったのは,Geocodingです.

コードは以下のような感じ.

注意して欲しいのは間違っても$addressに悪意のある値が渡らない様にすることです.
ここには書いていませんが,前もってサニタイジング処理をしているのでここではそれは省略させています.

/**
 * 会場の所在をの位置情報を取得
 */

$key = $address;                                               //開催場所
$key2 = rawurlencode($key);                                    //URLエンコード
$url = "http://www.geocoding.jp/api/?v=1.1&q=${key2}";         //APIに投げる

/*
 *パースする
 */
$xml = simplexml_load_file($url);

if ( !isset($xml->error)){
  $postDao->setGlobalX($xml->coordinate->lat);
  $postDao->setGlobalY($xml->coordinate->lng);
} else {
  $postDao->setGlobalX(0);
  $postDao->setGlobalY(0);
}

*1:もちろんヒットしない場合もありますが...