そろそろカレーカテゴリーを勝手に追加してやろうと思っております。
みんなのVAXです。
です。。。。
今日は時間も時間でおなかもすきまくっているので今回の件をささっとまとめようと思います。
まるで、そう、収拾がつかなくなった男女関係のようにね。。。
では、
まずはgoogle様への感謝の気持ちとこちら(php)
get_address.php
<?php
$zipcord ="";
$user= array();
if(isset($_GET["zipcord"])){
$zipcord =$_GET["zipcord"];
}
if(!empty($zipcord)){
$data = '//maps.googleapis.com/maps/api/geocode/json?sensor=true&language=ja&address='. $zipcord;
$json = file_get_contents($data);
if ($json == false) {
echo "false";
return;
}
$obj = json_decode($json,true);
//配列の中身をカウント [result] の 最初の配列の [address_components]
$count =count($obj['results'][0]['address_components']);
for ($a=0;$a<$count;$a++){
//都道府県名
if($obj['results'][0]['address_components'][$a]['types'][0] == "administrative_area_level_1"){
$location1 = $obj['results'][0]['address_components'][$a]['long_name'];
}
//郡
if($obj['results'][0]['address_components'][$a]['types'][0] == "colloquial_area"){
$location2 = $obj['results'][0]['address_components'][$a]['long_name'];
}
//市
if($obj['results'][0]['address_components'][$a]['types'][0] == "locality"){
$location3 = $obj['results'][0]['address_components'][$a]['long_name'];
}
//区
if($obj['results'][0]['address_components'][$a]['types'][0] == "ward"){
$location4 = $obj['results'][0]['address_components'][$a]['long_name'];
}
//以下
if($obj['results'][0]['address_components'][$a]['types'][0] == "sublocality_level_1"){
$location5 = $obj['results'][0]['address_components'][$a]['long_name'];
}
}
$user[] = array(
'location1' => $location1.$location2.$location3.$location4.$location5
);
//jsonとして出力
header('Content-type: application/json');
echo json_encode($user);
}
?>
これを PHPファイル として保存してください。
.php ってやつですね。
受け取り側( js)
jQuery(function($){
$('#get_address').click(function(){
var zipcord = $('#zipcord').val(); //郵便版番号入力値 名前はそれぞれ
if (zipcord != "" ){
//loadingとか入れたいとき用 使用時は //を外します
//$('#loading_address').fadeIn();
$.ajaxSetup({
// IE対策 キャッシュクリア
cache: false, });
$.ajax({
type: 'GET',
url: 'function/get_address.php?zipcord='+zipcord,
datatype: 'json',
success: function(json){
$.each(json, function(i, item){
$('#address').val(item.location1);
//$('#loading_address').fadeOut();//loadingとか入れた人はこいつで読み込み後消せます。
});
}, error: function(){
// $('#loading_address').fadeOut();//loadingとか入れた人はこいつで読み込み後消せます。
alert('error');
}
});
} else {
alert('error');
}
});
});
url 部分
'function/get_address.php
こちらは get_address.php を設置するパスを書いてください。
受け取り側 (html)
<html>
:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script>
【受け取り側 js をここに記述】
</script>
<body>
<p><input type="text" id="zipcord" value="" > <button type="button" id="get_address">自動入力</button></p>
<p><input type="text" id="address" value="" ></p>
</body>
</html>
htmlファイルの中に
jQueryのコードを書いておいてくださいね。
なんのこっちゃわかんない人もいると思いますがやってる内容は
■php・・・googleマップなんやらで使っているであろうの便利なもので郵便番号から
「都道府県名」「市町村区」を取得して json 吐き出し。
■html・・・jquery の ajax通信を使って phpファイルに送信
phpファイルからの返信を受け取り表示
実際の動きはdemoを確認してみてください。
まだ需要があるかはわかりませんが
どこかでおまけに追加してあげておくとみんな助かります。
まとめ
今回僕は1週間ほどカレーとのブランクがあります。
食べたいならすぐ食べた方がいい!
どこかの偉い人が言っていた気がしますがみなさんも必要だと思うならすぐ使ってみるといいと思います。
次回こそ、、、