Использование Microsoft Excel через драйвер ODBC с PHP - PullRequest
2 голосов
/ 17 февраля 2011

Я пытаюсь вставить данные и выбрать данные из Excel, используя соединение ODBC.Мне удалось подключиться к нему:

$dbh = new PDO("odbc:Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};Dbq=$file_name", $username, $password);

Однако я не уверен, как запросить Excel, так как для этого есть минимальная документация!Я попытался это:

$query = "INSERT INTO $sheet ($cell) VALUES ($value)";

$result = $dbh->query($query);

Но это приводит к ошибке:

Array ([0] => 07002 [1] => -3010 [2] => [Microsoft] [Драйвер ODBC Excel] Механизму базы данных Microsoft Office Access не удалось найти объект «Лист1». Убедитесь, что объект существует, и что вы правильно указали его имя и путь.odbc_stmt.c: 254) [3] => 07002)

Под объектом мы надеемся, что они означают лист Excel?

Спасибо всем за помощь

Ответы [ 2 ]

2 голосов
/ 17 февраля 2011

вам нужно использовать ODBC?Я всегда чувствую боль в *.
Если вы не обязаны использовать ODBC, я предлагаю вам попробовать доступный класс PHPExcel здесь (не аффилированный), который имеетсделал чтение и написание Excel из PHP очень легким для меня во многих случаях.

если вы открыли лист Excel в Excel и убедились, что на самом деле он содержит лист с именем «Лист1», вы можете расширить поиск - возможно, лист или ячейка заблокированы от редактирования?это может привести к самым странным ошибкам.

1 голос
/ 17 февраля 2011

Лист1 называется Лист1 в Excel. Книги Excel, открытые в , по умолчанию доступны только для чтения .

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