[PHP-users 18056]Re: 配列に燐面しかない場合のエラー処理
Osamu Shigematsu
shige @ ravi.ne.jp
2003年 9月 25日 (木) 02:03:27 JST
重松です。こんにちは。
> 実際のプログラムでは、重松さんのおっしゃるとおり、
> ユーザーが見てわかりやすいと同時に、エラーリカバリーや
> ファイルセーフになるような作りにします。
ファイルセーフというのは、どのようなものでしょうか?
# ロックなどを握ったまま死なないということでしょうか?
あと、見やすさを優先するあまり、情報を表示し過ぎるのも問題ですね。
たとえば、ログイン画面で、ID とパスワードを入力してもらうようなシーンでは、たとえ、ID
が正しくて、パスワードが間違えているとしても、「パスワードが違います」と表示すれば、少なくとも ID
は正しかったという秘密が暴露されます。多少不便ですが、「ID
またはパスワードが違います」と表示する方がスマートですし、エラー番号なども、例えば、ID 違いが E100 でパスワード違いが E101
のように異なっていれば、表示しないとか、外向けのおおざっぱなエラー番号にする (先の例なら、数字部分を /10 して表示するとか)
などの対策が考えられますね。
私の場合には、デバッグ情報用のオブジェクトを作って、そこにメッセージを溜め込み、デバッグ用のテンプレートでは、そのオブジェクトを表示するように
していました。もっと良い方法はいろいろあると思います。
PHP-users メーリングリストの案内