Всем привет. Есть необходимость общаться с акцессом из php. У кого есть опыт в этом вопросе подскажите пож. как организовать процесс подключения к базе? зы: php7.3.7
Хорошее видео Примерный код Код (Text): <?php $connection = odbc_connect("cars_connection", "", ""); $sql = "SELECT * FROM mark"; $result = odbc_exec($connection, $sql); while(odbc_fetch_row($result)){ for($i=1;$i<=odbc_num_fields($result);$i++){ echo odbc_result($result, $i); echo " "; } }
Спасибо за помощь, но к сожалению такой вариант я пробовал Получил такую ошибку: "Warning: odbc_connect(): SQL error: [Microsoft][�������� ��������� ODBC] � ��������� DSN ���������� �������� � ���������� ��������� �� ������������ ���� �����., SQL state IM014 in SQLConnect in C:\xampp\htdocs\index.php on line 9"
т.е. вы создали подключение в самой ОС как на видео, скопировали имя этого подключения в свой код (и БД Access создали) ? И выдает ошибки? Просто судя по вашей ошибке не удается как раз подключение найти
Совершенно верно, но до вышесказаноого пользовался готовой базой, но 10 мин назад создал тестовую базу, как на видео, но ошибка таже. У меня стоит 7-ка 64 может в этом собака зарылась..... Я бьюсь над подключением больше недели, перелопатил по тырнета.....
Установил всю софтину на win32, дабы избежать несоответствий разрядности, в итоге появилась другая ошибка: Fatal error: Uncaught Error: Call to undefined function odbc_connect() in C:\xampp\htdocs\index.php:14 Stack trace: #0 {main} thrown in C:\xampp\htdocs\index.php on line 14 Складывается такое впечатление, что php просто не знает функцию odbc_connect(). Может функции odbc необходимо включить?
расскоментируйте там строку, в зависимости от версии будет как то так называться: PHP: ;extension=odbc
Кто знает, какие еще есть настройки в PHP? И еще, я пользую "xampp", может сборка "заточена" под mysql? Как это проверить? С mysql все работает отлично.
Имею схожую проблему, но с PHP 5.3 Также Win 7 x64. В итоге конфликты с дровами для баз Аксэсс. Ошибки разные: Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию, SQL state IM002 in SQLConnect in H:\home\lepus\www\locations.php on line 6 Could not find database file. При том, что дрова на эту базу я вручную поставил из недр системы. При этом у знакомого на такой же винде подобный же код работает норм, не понимаю что к чему в общем, кто может подсказать?
Я у себя решим данную проблему, опишу как: Во первых откатился на php 5.6, php7хх ни в какую не хочет работать ни с 'odbc_connect()' ни с PDO. И второй момент, на каком то форуме мне пиндос с гугл переводчиком объяснил, хоть система и х64, а файлы базы могут быть х32. Я установил комплект дров с https://www.microsoft.com/ru-ru/download/details.aspx?id=36434. Несмотря на х64 вин дрова норм стали и все заработало. В проекте использую код: $f='D:\xampp\htdocs\BD\Form.mdb'; $konekt="odbcdriver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=$f"; $baza = new PDO($konekt)or die('Нихрена не конектит'); echo "ПОДКЛЮЧЕНО к $f"."<BR>"; $zapros = "SELECT * FROM TblVyd"; ну так далее...