У меня проблемы с подключением к базе данных Access (в частности, к базе данных Access 2013 с расширением .accdb). Вот код, который я пытаюсь запустить:
$dbName = $_SERVER["DOCUMENT_ROOT"] . "/test/testdb.accdb";
echo $dbName."<br />";
if (!file_exists($dbName)) {
die("Could not find database file.<br />".$dbName);
}
try {
$db = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};;Dbq=$dbName");
} catch(PDOException $e) {
echo "Error: ".$e->getMessage()."<br />";
}
Я убедился, что файл testdb существует в правильной папке, но когда я пытаюсь создать новый PDO, я получаю следующую ошибку: «не удалось найти драйвер».
Теперь я вернулся к своим настройкам ini и подтвердил, что у меня выбраны следующие расширения:
php_curl
php_gd2
php_mbstring
php_mssql
php_mysql
php_mysqli
php_pdo_mssql
php_pdo_mysql
php_pdo_sqlite
Я использую WAMP версии 2.4 с PHP 5.4.16 на компьютере с Windows 7. Я был бы признателен за любую помощь, которую я могу получить.
Вам придется установить (если он есть в вашем дистрибутиве) или скомпилировать универсальный драйвер pdo-odbc: http://php.net/manual/en/ref.pdo-odbc.php
Других решений пока нет …