top


総投稿数 本 
no_

スポンサーサイト

 --------
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
カテゴリ :スポンサー広告 トラックバック(-) コメント(-)
no_850

郵便番号<>住所変換:あぁ、これも、今さら、ですね。でも改めて作成。提供されている郵便番号データベースを最新にしてと。 ・・・ 【創ったmetaboy】

 2009-04-15
 あぁ、ちょっと「郵便番号」調べたい。
 あぁ、この郵便番号で「どの辺」だっけ?

 なんてときの簡易ツール。
 まぁ、これも
 「今更・・・」ですが、あえて作成。
 〒<>住所 簡易変換ツール

 とりあえず、報告特徴としては

  ・ブログパーツ形式で作成
   ・できるだけワンクリック
   ・複数候補はリストで表示
 です。
 ・ワンクリック!〒<>住所変換
 ワンクリック!〒<>住所変換

 報告です・・・

  追記に ▼

FC2ブログランキングにほんブログ村 IT技術ブログ Webサイト構築へブログ王ランキング人気ブログランキング人気ホームページランキングへ


more************************************************
◎ ワンクリック!〒<>住所変換
************************************************


まずは、データ。
・日本郵便さんが、提供してくれています。ご存知ですよね。
郵便番号データダウンロード
郵便番号データダウンロード 2009年3月31日更新
 の最新版! だ。

 ・・・ありがとうございます。

 さて、どんなパーツ
 するか・・・

 
 ◆仕様策定◆
 ・機能少ない分、できるだけ
  ・簡易に
  ・ワンクリックで

  ま、それだけ。ですねぇ。


 ■PHP と JavaScript の連動
  ※今までいろいろ学んできた
   ・PHP と JavaScript の連携
   ・クロスドメイン問題
   ・文字コード
   ・データ接続
   などの知識や情報のおかげか。簡単に(一応)できた。

  □MySQLのテーブル構成
   「日本郵便」さん提供のデータで、全国一括ファイルを取得
   ・テーブルを定義して、データを組み込む
    (このあたりは、phpMyAdmin。ほんと
     いろいろと便利な機能揃ってますよねぇ)


 ■実際の構築

   □入力された値を元に、PHPスクリプトを呼ぶ
// データ送信
if((intWork===1)||(intWork===2)){
var toURL = "*****.php?";
toURL += "type=" + intWork;
if(intWork===1){ toURL += "&val1=" + form.val_zip1.value + "&val2=" + form.val_zip2.value;
}else{
if(intWork===2){ toURL += "&val3=" + encodeURIComponent(form.val_address.value);
}}
var originalNode=document.getElementById("scriptNode");
var newScriptNode=document.createElement("script");
newScriptNode.src=toURL;
newScriptNode.charset="EUC-JP";
newScriptNode.id="scriptNode";
originalNode.parentNode.replaceChild(newScriptNode,originalNode);
}
 ・・・ パスワード作成のときに学んだ
     クロスドメイン回避方法

   □PHPの戻り値に、JavaScript の関数(function) をそのまま
    埋め込むやり方、ね。
    ・ほんと便利。でもセキュリティには少し心配。
     ※引き続き情報は、集めなくては・・・
function CallBack(arg){
var form = this.document.forms['zipaddresss']; // フォームオブジェクト

if(arg!=''){
var tempstrs = arg.split(":::");
var tempgetval = tempstrs[1];
if(tempgetval.indexOf("///",0)>=0){
var tempgetvals = tempgetval.split("///");
var vars_tempgetval = new Array();
var row = 0;
for(var i=0;i<tempgetvals.length;i++){
if(tempgetvals[i]!=''){
var tempgetvals_i = tempgetvals[i].split("+++");
vars_tempgetval[row] = tempgetvals_i[0] + " " + tempgetvals_i[1]; row++;
}
}
if(tempstrs[0]==1){
}else{
if(tempstrs[0]==2){
}}
var temp_row = 1;
if(row <= 10){ temp_row = row; }else{ temp_row = 10; }
var d = document.getElementById('result_zipaddress');
var dstr = "";
dstr += " <select id=\"rt_vals_zipaddress\" name=\"rt_vals_zipaddress\"";
dstr += " onClick=\"JavaScript:GetValsList();\"";
dstr += "size=" + temp_row + " multiple";
dstr += ">";
for(var s = 0;s<vars_tempgetval.length;s++){
dstr += " <option value='" + vars_tempgetval[s] + "'>" + vars_tempgetval[s] + "</option>";
}
dstr += " </select><br>";
d.innerHTML = dstr;
}else{
if(tempstrs[0]==1){
var tempstrs = tempgetval.split("+++");
form.val_address.value = tempstrs[1];
}else{
if(tempstrs[0]==2){
var tempstr1 = ""; var tempstr2 = "";
tempstr1 = tempgetval.substr(0,3);
tempstr2 = tempgetval.substr(3,4);
form.val_zip1.value = tempstr1;
form.val_zip2.value = tempstr2;
}}

}
}
}
 ・・・ 値は、(ちょっと)古く力技なやり方だけど
      配列ではなく、連結文字列を利用して実装。
      (理由は・・・? 内緒)

    最後は、
    いつものように
     ・動的にHTMLを書き込む形式で仕上げる と。

      特に「新しい情報」があるわけではないので
      詳細ソースは割愛します。
      見たい方は、自力で見れるだろうし・・・


 ■公開

   □このブログ右サイドに用意

    ※別ウインドウで開くものも用意
     した。


  今週は終わり。また来週、いろいろと創ろ。

◇今日の 「頁がありません」
今日の 「頁がありません」
commentsコメント
comment_post












管理者にだけ表示を許可する
commentトラックバック
トラックバックURL:
http://metaboy.blog23.fc2.com/tb.php/850-14ce5f3d
ようこそ
Add to Google 創るmetaboy:RSSフィード
My Yahoo!に追加
最新記事のRSS | 問い合わせ

仕事検索、アルバイト検索、依頼仕事の検索ポータル - 仕事検索.COM - www.jobkensaku.com ツクルン

創るmetaboy - WEB創る、サイト創る、何創る - 創ったmetaboy

 

リンク集

 

最近の記事

 

ブロとも申請フォーム
Sponserd by

さくらのレンタルサーバ さくらのレンタルサーバ
大容量・高機能レンタルサーバー heteml 大容量・高機能レンタルサーバー heteml
XREA (ValueDomain)
お名前.com お名前.com
名づけてねっと名づけてねっと
ムームードメインムームードメイン

 

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。