1

私は PHP エラーについて十分に理解しています (以前ほど or die() を使用していません) が、致命的なエラー メッセージをユーザーに配信する方法を完全には理解していません。左上隅のプレーンテキスト。

このコードがあるとします:

try {  
$conn = new PDO("mysql:host=host; dbname=userDB", $username, $password); 
$stmt = $conn->prepare("UPDATE employee SET password = :newpass WHERE password = :tempPass");
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt->execute(array('tempPass' => $tempPass, 'newpass' => $newpassword));
echo'success!<br>';
echo"<a href='main_login.php'>Back</a>";

    }  
catch(PDOException $e) {  
        echo 'ERROR:   '. $e->getMessage();  
    }   

それはそれで良いのですが、それが成功するかどうかにかかわらず、それは醜い肯定のメッセージです。

このメッセージを配信するために、ユーザーを別のページにリダイレクトする必要がありますか?

その場合、メッセージを個々のページにどのように保存/転送する必要がありますか? user_success.php、user_failure.php、user_epic_failure.php、every_other_case.php を作成する必要はありません。それは効率的ではなく、私ができることを制限します。

これらのメッセージをセッション エラー変数に保存するのが良い方法だと聞いたことがありますが、それが最善の方法でしょうか? メッセージを渡すためのテンプレートとして機能する、専用のエラー ページと専用の成功ページが必要ですか?

私はきれいなエラーメッセージが欲しいだけです。質問するのはそんなにですか?

4

1 に答える 1

0

システムエラーメッセージをユーザーに表示しないでください。これにより、システムに関する潜在的なハッカー情報が提供される可能性があります。致命的なエラーが発生した場合にcatch句からリダイレクトする一般的なエラーページがあります。
致命的なエラーを引き起こさず、コードの実行を停止しない他のすべてのエラーについては、コードの実行を続行し、必要に応じてページの上部にエラーメッセージを表示します。

于 2012-06-27T13:57:48.943 に答える