Мой клиент уже несколько лет работает на сервере Windows, но сейчас мы переходим на отдельную машину Linux для веб-приложения, которое я создал для них. В настоящее время мы запускаем PHP на сервере Windows, на котором мы можем подключиться к файлу MDB, который находится на том же диске. Это файл от внешнего участника, веб-приложение использует MySQL. В новой настройке у нас есть веб-сервер Linux (Apache / MySQL / PHP) и сервер Windows 2016, которые подключены через VPN, и мы смонтировали общий ресурс на сервере Windows, в котором находится файл MDB. расположен. Пока все хорошо, но я не могу запросить файл MDB. Соединение установлено, а не ошибка, но каждый запрос, который я запускаю, возвращает ошибку или ничего не уверенного. Это мой код:
<?php
$db=new PDO("odbc:Driver=MDBTools; DBQ=/mnt/<dir>/<file>.mdb;");
$query=$db->query("SELECT * FROM <table>;");
$return=array();
if($query) {
while($result=$query->fetch(PDO::FETCH_ASSOC)) {
$return[]=$result;
}
}else $return['error']=1;
//close
$query=null;
$db=null;
print_r($return);
?>
В настоящее время все возвращает ошибку> 1.
PDO выдает следующую ошибку:
Connection failed: SQLSTATE[08001]: Client unable to establish connection: 1 Couldn't parse SQL (SQLExecute[1] at /build/php7.2-pRoOsC/php7.2-7.2.24/ext/pdo_odbc/odbc_stmt.c:260)