2017-05-17 6 views
0

私のページにはエラーがありませんが、mysqliの呼び出しをpdoに変更する必要があります。私は渡される必要があるパラメータの量が分からず、 pdoを持つパラメータの配列pdoはすべてのクエリを試してみるべきですか?

私はon this pageをお読みください。

警告!アプリケーションがPDOコンストラクタからスローされた例外をキャッチしない場合、zendエンジンが行うデフォルトのアクションは、スクリプトを終了してバックトレースを表示することです。このバックトレースは、ユーザー名とパスワードを含む完全なデータベース接続の詳細を明らかにします。この例外を明示的に(catch文によって)キャッチするか、set_exception_handler()で暗黙的にキャッチするのはあなたの責任です。

私は一度もpdoを使ったことがありません。チュートリアルでは知らないうちにユーザー名/パスワードを知らせることができないことを指摘していません。

すべてのクエリを入力するか、またはnew PDO();try/catchに入れる必要がありますか?それは良い練習ですか? try/catchよりset_exception_handler()を使用する必要がありますか?

+0

https://phpdelusions.net/pdo#errors –

+0

ありがとうございました。このリンクは非常に役に立ちました – core36

+0

コーディングを歓迎します。 –

答えて

2

TL; DR:なし

例外を生成しませんクエリのほとんどは。

プロジェクトが開発中の場合、キャッチされない例外によってSQLコードでエラーが検出されます。プロジェクトが実稼働中の場合は、表示される例外のみが予期される例外である必要があります。 「一意キー違反」のように、いくつかの外部キーの制限。

基本的に、プロダクションコードでは、例外を予期されるロジックの一部として扱い、クエリを囲むのはtry-catchブロックのみにする必要があります。

関連する問題