Почему я не могу подключиться к базе данных msaccess (.accdb) с кодом php на бесплатном веб-сайте - PullRequest
0 голосов
/ 29 мая 2020
  • Я проверил расширение pdo_odb c на <?php phpinfo(); ?> и обнаружил, что он включен.
  • Я разрешил путь к файлу $_SERVER["DOCUMENT_ROOT"] и повторил результат, затем я использовал следующий код для connect:
$db = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ=$dbName; Uid=; Pwd=;");

Я получаю следующую ошибку:

SQLSTATE [01000] SQLDriverConnect: 0 [unixODBC] [Диспетчер драйверов] Не удается открыть lib 'Драйвер Microsoft Access (* .mdb, * .accdb)': файл не найден

  • У меня нет доступа к php .ini для его редактирования.

Это мой код:

$dbName = "filename.accdb";
if (!file_exists($dbName)) {
    die("Could not find database file.");
}
else
{
  try{
   echo 'Connecting ... ';
   echo $dbName ."</br>";
   $db = new PDO("odbc:DRIVER={Microsoft Access Driver (*.mdb, *.accdb)}; DBQ=$dbName; Uid=; Pwd=;");
    $sql  = "SELECT * FROM Tblperson";
    $sql .= " WHERE id = 1"; 
    echo $sql;
    $result = $db->query($sql);
    $row = $result->fetch();
    //......

}
  catch (PDOException $e) {
  echo $e->getMessage();
}
}

Я могу плавно использовать приведенный выше код с WAMP на Windows 10 64-бит, но на бесплатном веб-сайте (и даже на платном) я получаю ту же ошибку, что и в моем исходном вопросе, хотя я удостоверяюсь, что все необходимые расширения PHP включены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...