عند استخدام PDO للتعامل مع قاعدة البيانات، تُطلق أخطاؤها كاستثناء من نوع PDOException: فشل الاتصال، أو خطأ في الاستعلام، أو قيد مخالف.
try {
$pdo = new PDO('mysql:host=localhost;dbname=shop', 'user', 'pass', [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
]);
$pdo->query('SELECT * FROM missing_table');
} catch (PDOException $e) {
error_log($e->getMessage());
echo 'Something went wrong, please try later.';
}
ملاحظتان
- منذ PHP 8، وضع الاستثناءات هو الافتراضي في PDO.
- لا تعرض رسالة الخطأ الكاملة للزائر، فقد تكشف اسم قاعدة البيانات أو تفاصيل أخرى. سجّلها في السجلات فقط.