フリーなのに高性能&クールなデザインのメールフォームプロをいつもありがたく利用させて頂いています。
たまに設置ミスで動作しないこともありますが、だいたいがパスの設定ミスなので、
↓この辺や
<!–[メールフォームプロ・参照ファイルここから]–>
<link rel=”stylesheet” href=”commons/mailform.css” type=”text/css” />
<script type=”text/javascript” src=”commons/jquery.js” charset=”UTF-8″></script>
<script type=”text/javascript” src=”commons/mailform.js” charset=”UTF-8″></script>
<script type=”text/javascript” src=”postcodes/get.cgi?js” charset=”UTF-8″></script>
<!–[メールフォームプロ・参照ファイルここまで]–>
この辺↓
<form id=”mailform” method=”post” action=”mailformpro/send.cgi” onsubmit=”return falsesubmit(this)”> <script type=”text/javascript” src=”mailformpro/include.cgi” charset=”UTF-8″></script>
をチェックしていると直る場合が多いのですが、今回は他のファイルも全て見直しても何故か郵便番号から住所が自動的に入力されない。
FirefoxのアドオンであるFirebugでcssのチェックすることはあっても、JavaScriptのデバックには使ったことがありませんでしたが、なんとなく試してみると・・・・・
郵便番号から住所の自動入力が正常に動作する方の”get.cgi?js”では
<!–// 郵便番号から住所を求めるjs//以下がフォームのHTMLから見たCGIまでのパスvar getpostcode_cgi = “/mailformpro/postcodes/get.cgi?”;以下省略
となっているのに、不具合のある方では
<!–// 郵便番号から住所を求めるjs//以下がフォームのHTMLから見たCGIまでのパスvar getpostcode_cgi = location.protocol + “//www.ドメイン名.jp/mailformpro/postcodes/get.cgi?”;
以下省略
となっていることを発見。
早速、”postcode.jp”を開いて
//以下がフォームのHTMLから見たCGIまでのパス
var getpostcode_cgi = location.protocol + “<this_url>”;
の部分を
//以下がフォームのHTMLから見たCGIまでのパス
var getpostcode_cgi = “mailformpro/postcodes/get.cgi?”;
に直したところ、無事に郵便番号から住所が自動入力されるようになりました。
※メールフォームを設置したHTMLファイルとpostcodesフォルダが同じ階層にある場合は”postcodes/get.cgi?”
でよいのだと思います。
サーバーによっては今回のような修正をしなくても正常に動作しているケースも多々あるので、サーバーの仕様に関係あるようですが、時間がないのでこれ以上の詮索はやめておきます・・・・・おしまい。