Javascript 致命错误:未捕获异常';PDO异常';带有消息';SQLSTATE[HY000]SQLDriverConnect:-1044

Javascript 致命错误:未捕获异常';PDO异常';带有消息';SQLSTATE[HY000]SQLDriverConnect:-1044,javascript,php,jquery,Javascript,Php,Jquery,我一直看到这个错误,但我看不出问题出在哪里,我使用的是ms access数据库要求,我真的需要创建一个基于角色的访问控制,感谢提前 代码如下: Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] SQLDriverConnect: -1044 [Microsoft][ODBC Microsoft Access Driver] Not a valid file name.' in C:\xampp

我一直看到这个错误,但我看不出问题出在哪里,我使用的是ms access数据库要求,我真的需要创建一个基于角色的访问控制,感谢提前

代码如下:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] SQLDriverConnect: -1044 [Microsoft][ODBC Microsoft Access Driver] Not a valid file name.' in C:\xampp\htdocs\img\config.php:15 
Stack trace: 

#0 C:\xampp\htdocs\img\config.php(15): PDO->__construct('odbc:Driver={Mi...') 
#1 C:\xampp\htdocs\img\index.php(9): require_once('C:\\xampp\\htdocs...') 
#2 {main} thrown in C:\xampp\htdocs\img\config.php on line 15

首先,删除这一行后面的逗号
PDO::MYSQL_ATTR_INIT_COMMAND=>'SET NAMES utf8',
然后
catch
a
PDOException
而不仅仅是
异常
而且您实际上并没有使用
$dboptions
数组,还要检查手册中新PDO(..)的正确参数在打开PHP标记后立即进行测试时,将错误报告添加到文件顶部,例如

error_reporting( E_ALL & ~E_DEPRECATED & ~E_NOTICE );
ob_start();
session_start();

$database = "C:\xampp\htdocs\img\multi-admin.mdb";
$DB = new PDO("odbc:Driver={Microsoft Access Driver (*.mdb)};Dbq=$database;Uid=Admin");

define('PROJECT_NAME', 'Create Multi admin using php mysql and bootstrap library');
$dboptions = array(
              PDO::ATTR_PERSISTENT => FALSE, 
              PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, 
              PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
              PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8',
            );

try {
  $DB = new PDO("odbc:Driver={Microsoft Access Driver (*.mdb)};Dbq=$database;Uid=Admin");
} catch (Exception $ex) {
  echo $ex->getMessage();
  die;
}

require_once 'functions.php';

//get error/success messages
if ($_SESSION["errorType"] != "" && $_SESSION["errorMsg"] != "" ) {
    $ERROR_TYPE = $_SESSION["errorType"];
    $ERROR_MSG = $_SESSION["errorMsg"];
    $_SESSION["errorType"] = "";
    $_SESSION["errorMsg"] = "";
}
?>