2010-12-05 23 views
4

私はPHPでPDOを扱っています。PDO:エラー処理

これで、グローバルエラーを検出して表示できるかどうかは疑問です。グローバルで

私はどの$sql=$connect->prepare()が失敗した場合を意味し、その後、

"Something went wrong:" . the_error

をエコーそれとも常にinviduallyその各$ sqlを行うには次のものが必要でしょうか?

+0

希望する動作を達成するためにPDOを拡張することができます。 – mpen

答えて

2

PDOクラスによってスローされた例外を常にキャッチできます。

try 
{ 
    ...new PDO('odbc:SAMPLE', 'db2inst1',... 
} 
catch(PDOException $exception) 
{ 
    echo "Failed: " . $exception->getMessage(); 
} 
+0

PDOオブジェクトがすべてのエラーの場合に例外をスローするとは思わない。少なくとも次のコードではそうではありません(パラメータは指定されていません): '$ sql =" SELECT * FROM 'user' WHERE' username' =:usernameと 'password' =:password"; $ステートメント= $ pdo-> prepare($ sql); $ statement-> execute(); ' – ehsun7b