|
在您的代码中,确实如您所说,问题出在连接字符串的定义上。具体来说,odbc:driver={microsoft access driver(.mdb)} 这部分缺少了一个空格。正确的写法应该是: php $strDSN='odbc:driver={Microsoft Access Driver (.mdb)};dbq='.realpath('../database/database.mdb'); 在这个连接字符串中,{Microsoft Access Driver (.mdb)} 是一个特定的标识符,用于指示 ODBC 驱动程序使用 Microsoft Access 驱动程序来连接指定的数据库文件。这个标识符中的 .mdb 部分表示它适用于所有扩展名为 .mdb 的数据库文件。 此外,您还定义了 $strDBName 和 $strDBPWD 为空字符串,这意味着您将使用默认的数据库用户名和密码进行连接。如果您的 Access 数据库文件没有密码保护,这通常是没问题的。但是,如果数据库有密码,您需要提供正确的密码。 最后,realpath() 函数用于将相对于脚本运行目录的路径转换为绝对路径,这样可以确保无论脚本运行在服务器上的哪个目录,都可以正确地找到数据库文件的位置。 将上述信息整合到一起,您的最终代码应该是: php $pdo = new PDO($strDSN, $strDBName, $strDBPWD); 其中,$strDSN 已经正确地定义为: php $strDSN='odbc:driver={Microsoft Access Driver (.mdb)};dbq='.realpath('../database/database.mdb'); 请确保您的 database.mdb 文件位于 ../database/ 目录下,并且您的 PHP 脚本有足够的权限读取这个文件。 本文由骑士互联为您提供,转载请标注明。如需月付空间,美国服务器租用,免费虚拟主机,香港服务器租用,免费空间,香港VPS,美国VPS,香港虚拟主机,站群服务器租用请认准骑士互联,买的放心用的安心。 |