和田憲幸のブログ

札幌市白石区在住、個人事業のWebエンジニア 和田憲幸(43歳)のブログです。

メールフォームプロ2.0開発(8)

ようやくメールフォームの開発もほぼ終わりまして。あとはマニュアルだけですね。

2009-01-05 15:32:23
入力時間 / 17:37

あともう少しで公開します!最新版のメールフォームプロCGIです。

今回はよくやった。失業してからはじめてのバージョンアップということもあって、在職中はけっこうテキトーだった部分などを含めていろいろ細かいところのfixが多かったような気がします。文字化けに関してもhotfix用の関数を用意しておいて、任意の文字を回避できるようにしてみたので、サーバのJcodeのバージョンによって発生しうる文字化けもある程度は回避できるのではないかなと。

sendmailバグ回避

postfixでは問題ないんですが、sendmailだと64文字制限という罠が潜んでおりまして。1行に対して64文字を超過する場合、BASE64エンコーディングをしなきゃいけないんですよね。かといってBASE64のモジュールを使うとまたサーバによって使えなくなるし。ということで、Javascript側で64文字を超える場合、勝手に63文字目に改行コードを入れることにしました。

CSVにも改行を反映

CSVファイルはだいたいEXCELで見ますよね。だからもう改行も入れることにしました。今までのバージョンでは改行コードを全て取り払っていたのですが、なんとなく改行コードを含めてCSV化することに。Accessなどに取り込む場合はこっちのほうが断然良いですものね。ただ、そのほかのPGと連携させる場合はアレですが。

エレメントを連結

エレメントを連結と。ま、そのままなんですけど。連結させます。確認画面がスッキリしましたね。

通し番号に日付を割り当て

通し番号が付いてると便利なんですけど、何番目の問い合わせかすごくわかりやすすぎる!ということで、通し番号の頭に日付を入れてなんとな~く連番がわかりづらくしてみる機能。

メールフォーム業界初 音声ナビゲーション

なんだメールフォーム業界って・・・。mp3をロードしてエラー時と確認画面表示の際に音声で注意を促してくれます。mp3データを差し替えることによってカスタマイズも可能!本当はエレメント毎にやろうと思ったんですが、めんどくさいのでやめました。たぶん誰も使わないと思いますが・・・。

郵便番号からAJAX住所入力補助をモジュール化

これ単体で公開してもいいよね。という状態にしました。これによって複数のメールフォームを設置する場合でもひとつの郵便番号辞書を使いやすくなったわけですね。これは私としてもとても楽ですありがとう和田。

DOMでリアルタイム要素チェック

onblurのタイミングで要素をチェック。DOMアラートが有効になっている場合、DOMアラートを出します。つか、これがあると確認画面前のDOMアラートの存在意義が・・・。

入力平均時間計測と表示

「このフォームの入力にはだいたい○○分くらいかかります」という無駄な機能を追加。必要あるのかこの機能は?!アンケートとかだったらあってもいいよね。

mimeエンコーディングしてみた

いままでしてませんでした。すいません。各種文字化け対策に本腰を入れる課程で避けて通れなかったのでmimeエンコーディングしてみました。なので、メールの送信元の名前がマルチバイトでも表示できるようになりました。今まで手を抜いていてゴメンネ!

cgi-binディレクトリに対応

cgi-binディレクトリのあるレガシーなサーバにも対応。郵便番号辞書も同じ仕様なのでファイルの管理がディレクトリ単位になってちょっと便利になった。

チェッカーで簡単設置

このチェッカー機能によって設置代行が大幅に減るのではないかと懸念されますが、サポート業務の効率化を考えれば妥当なところかなと。一応、セキュリティ上の懸念事項もチェックするようになってます。cgiが全て同じディレクトリで扱えるようになったため簡単に付けれましたね。

細かいバグfix

ENTERで次のエレメントの挙動の修正だったり、datファイル初期化時のERRORだったりを修正した。

有料化?

で、今ちょっとだけ悩んでいるのか有料化という壁。なにせ社会保険料が高いというところで、せめて社会保険料のタシになればなと思って有料化しようかなと思ってるんですが、そうすると和田ポリシーに反するわけで。お金がからむと正常な思考からどんどん自分が離れていくような気がしてとても切ないですね。とりあえずドネーションウェアにしようかなと思ってはいますが。

TAG

P.117