2011年6月29日水曜日

メールアドレスをチェックするプログラムを変更しました

こんにちは、名古屋の時間貸しレンタルオフィス、レンタル自習室の@Spaceアットスペース管理人の中井です。



さて、アットスペースはホームページから会員登録機能や、一日定額や月極めの予約ができます。
これは、ホームページを動的に動かすプログラム(PHP)を使って作成しています。

この中で、メールアドレスが正しく入力されたかを簡単なチェックプログラムで検証しております。

最近、この予約システムのプログラムを軽く改訂しました。
目的は操作性の向上です。

その稼働確認テストの一環として、妻の携帯電話のメールアドレスを使いました。

ここで発見しました。

妻のメールアドレスに、”/”(スラッシュ記号)が含まれているではありませんか?!

このスラッシュ記号はご法度だろうと!
実際に妻に聞いてみると実際に使用しているとのこと。

知らなかった。
この記号がメールアドレスに使えるとは。

この”/”(スラッシュ記号)が含まれるメールアドレスで改訂プログラムをテストしました。
結果は、やはりメールアドレス検証プログラムでエラーが発生!

このエラーは、今回の改訂部とは別の事象でありますが そのままにはしておけません。
そこで、以下の改訂仕様を検討する事と致しました。

<メールアドレス検証プログラム改訂>
・メールアドレスに使用可能な文字数字記号の調査

/[0-9a-z!#\$%\&'\*\+\/\=\?\^\\-\{\}\.]+@[0-9a-z!#\$%\&'\*\+\/\=\?\^\\-\{\}\.]+/


メールアドレスにこんな記号も使える事が解りました。
注)バックスラッシュ( \ )は右の記号を表示する目的で挿入しています。

正直驚き、知りませんでした。
技術屋は、メールアドレスに使えるか解らない?記号を無意識に外して考える傾向にあります(私だけかも)

早速、メールアドレス検証ロジックを改訂致しました。

<こちらを参考にさせて頂きました。>
正規表現でメールアドレスかどうかチェックする - ぱふぅ家のホームページ 
ありがとうございました。