Загружен и установлен PostgreSQL 9.2.3, который поставляется с Stackbuilder.PDO Exception «Не удалось найти драйвер» (pgsql)
Я использовал PostgreSQL Stackbuilder для установки Apache (2.2.22) & PHP (5.4.5).
Теперь я пытаюсь подключиться к базе данных с PDO, но я получаю ошибку driver not found
.
Я не прокомментировал extension=php_pgsql.dll
& extension=php_pdo_pgsql.dll
в моем файле php.ini.
Мой phpinfo(); функция показывает, что они включены.
Главное, что я заметил, что в моем PHP \ каталога нет внов \ каталога с этими файлами. Я предположил бы, что эти файлы были бы автоматически установлены в подкаталог php \.
Где можно хранить эти расширения; мне нужно указать абсолютный путь для php, чтобы найти их?
ОБНОВЛЕНИЕ: Итак, я вошел в php.ini и включил ошибки запуска. Когда я запускаю командную строку php.exe, я получаю ошибки, заявляя, что php_pgsql.dll & php_pdo_pgsql.dll не может быть найден.
Похоже, что они пытаются ссылаться на них на диск D: которого у меня нет. Я установил все в один каталог на диске E :. Я не могу найти расширения в любом месте (и не может php).
Как выглядит ваша строка подключения? – dlp
Я определил константы в файле конфигурации. Если я возвращаю его обратно, это выглядит так: «pgsql: host = localhost; port = 5432; user = postgres; password = postgres; dbname = Test» ' – Roy
Это выглядит как путь от сервера сборки, а не тот, который 'когда-либо устанавливаться в вашей локальной системе. Weird. Где 'php_pdo_pgsql.dll' в вашей системе? Это или папка, указанная в «php.ini» в любом месте? или на 'PATH'? –