Error handling PHP中的PDO错误-“;致命错误:未捕获异常';PDO异常';带有消息';找不到驱动程序“;

Error handling PHP中的PDO错误-“;致命错误:未捕获异常';PDO异常';带有消息';找不到驱动程序“;,error-handling,pdo,Error Handling,Pdo,我正在使用PDO连接到数据库,但它返回以下错误: 致命错误:在C:\AppServ\www\php learn\cms project\lib\database.class.php:19堆栈跟踪:#0 C:\AppServ\www\php learn\cms project\lib\database.class.php(19):PDO->u构造('mysql://hostnam...“,”root“,”00000“)#1c:\AppServ\www\php learn\cms project\c

我正在使用PDO连接到数据库,但它返回以下错误:

致命错误:在C:\AppServ\www\php learn\cms project\lib\database.class.php:19堆栈跟踪:#0 C:\AppServ\www\php learn\cms project\lib\database.class.php(19):PDO->u构造('mysql://hostnam...“,”root“,”00000“)#1c:\AppServ\www\php learn\cms project\config.php(49):database::get_instance()#2{main}在第19行的C:\AppServ\www\php learn\cms project\lib\database.class.php中抛出

文件database.class.php: 文件config.php
错误是不言自明的:您没有安装pdo_mysql ext。也不应该有//斜杠。而且。。。脚本中有太多无用的代码。一个想法是:在php.ini中取消注释行
extension=php\u pdo\u mysql.dll
extension\u dir=“ext”
。确保该dll存在于ext目录中
class database
{
    // static  تستخدم عندما نريد استخدام الكلاس دون انشاء اوجيكت
    // () $ ! ~ & ^
    private static $db_connect;

    private function __construct()
    {} //

     // دالة لعمل اتصال ب قاعدة البيانتا

    // self ==> تشير الى اللاكلاس نفسة
    public static function get_instance()
    {
        if(null === self::$db_connect){

            self::$db_connect = new PDO
            ('mysql://hostname='.DB_HOST.';dbname=' . DB_NAME,
             DB_USER,
             DB_PASS);
        }
        return self::$db_connect;
    }

}
// Start buffering  ==> the first function in the appliction
ob_start();
ini_set('display_errors', 1);
error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT);
ini_set('register_globals', 0);
define("DS",DIRECTORY_SEPARATOR);
define("PS",PATH_SEPARATOR); // WINDOWS = ; , LUNIX = ,
define("HOST_NAME", 'http://' . $_SERVER['HTTP_HOST'] . '/'); // DOMAIN NAME

// Paths
define("APP_PATH", realpath(dirname(__file__)) . DS);
define("TEMPLATE_PATH", APP_PATH . 'template' . DS);
define("LIB_PATH", APP_PATH . 'lib' . PS);

// Database
define("DB_HOST", "localhost");
define("DB_NAME", "cms_project");
define("DB_USER", "root");
define("DB_PASS", "00000");


$newpath = get_include_path() . PS . LIB_PATH; // Define new path
set_include_path($newpath);

function __autoload($class)
{
    require_once strtolower($class) . '.class.php';
}

$db_connect = database::get_instance();

// End the buffering
ob_flush();