Javascript 致命错误:未捕获异常';PDO异常';带有消息';SQLSTATE[HY000]SQLDriverConnect:-1044
我一直看到这个错误,但我看不出问题出在哪里,我使用的是ms access数据库要求,我真的需要创建一个基于角色的访问控制,感谢提前 代码如下: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
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
aPDOException
而不仅仅是异常
而且您实际上并没有使用$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"] = "";
}
?>