Страница 1 из 2

Ошибка Uncaught exception 'PDOException' with message 'could not find driver'

Добавлено: 18 апр 2016, 12:35
santex85
При конекте к базе данных вот такая ошибка: Uncaught exception 'PDOException' with message 'could not find driver'

Конект: $db = new PDO("mysqli:host = $host; dbname = $dbname",$user,$pass);

куда копать кто подскажет?

В php.ini смотрел все включено см. скрин. Спасибо!
Screenshot_2.jpg

Re: Ошибка Uncaught exception 'PDOException' with message 'could not find driver'

Добавлено: 18 апр 2016, 12:36
Максим
santex85, внимательно смотрим на картинку, фокусируем взгляд, ищем там слово mysqli... и не находим! В PDO как бы нет mysqli драйвера, наоборот вам нужно выбрать что вы хотите использовать mysqli или pdo. http://ruseller.com/lessons.php?rub=37&id=1381

Re: Ошибка Uncaught exception 'PDOException' with message 'could not find driver'

Добавлено: 18 апр 2016, 13:14
santex85
Максим, Спасибо большое! Понял свою ошибку! Все заработало. Тему можно закрыть.

Re: Ошибка Uncaught exception 'PDOException' with message 'could not find driver'

Добавлено: 06 май 2016, 20:09
Lasgrate
Максим писал(а):santex85, внимательно смотрим на картинку, фокусируем взгляд, ищем там слово mysqli... и не находим! В PDO как бы нет mysqli драйвера, наоборот вам нужно выбрать что вы хотите использовать mysqli или pdo. http://ruseller.com/lessons.php?rub=37&id=1381
Доброго времени суток.
У меня тот же запрос, но все же отлавливает pdoexception'could not find driver'
$pdo = new PDO("mysgl:host=localhost;dbname=$dbname", $dbuser, $dbpassword);

Re: Ошибка Uncaught exception 'PDOException' with message 'could not find driver'

Добавлено: 06 май 2016, 20:11
Максим
Lasgrate, mysql и mysgl это разные слова, не так ли? ;)

Re: Ошибка Uncaught exception 'PDOException' with message 'could not find driver'

Добавлено: 10 сен 2018, 09:45
orogastus
Вот такая ошибка вылазит:
Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in C:\OSPanel\domains\C9\include\setting.php:9 Stack trace: #0 C:\OSPanel\domains\C9\include\setting.php(9): PDO->__construct('sqlsrv:server=8...', 'sa', 'm128634!') #1 C:\OSPanel\domains\C9\script-head.php(3): include_once('C:\OSPanel\doma...') #2 C:\OSPanel\domains\C9\index.php(1): include('C:\OSPanel\doma...') #3 {main} thrown in C:\OSPanel\domains\C9\include\setting.php on line 9
скриншот: все подключено раскомментировано: http://prntscr.com/kskl0e
помогите, куда копать?

include_once("function.php");
$sql = new PDO("sqlsrv:server=".MSSQL_HOST."; Database=".MSSQL_DB."",MSSQL_USER,MSSQL_PASS);
$api = new API(true);
$ip = $_SERVER['REMOTE_ADDR'];

вот что там

Re: Ошибка Uncaught exception 'PDOException' with message 'could not find driver'

Добавлено: 10 сен 2018, 11:18
Ink0gnit0
У вас включён драйвер mssql, но не влючён sqlsrv. Это разные драйверы.
Если у вас PHP версии 5.4, 5.5 или 5.6, скачайте sqlsrv-драйвер отсюда

Если же PHP 7.x - отсюда

Скопируйте скачанные php_sqlsrv.dll и php_pdo_sqlsrv.dll в каталог .\modules\php\PHP-[ваша_версия_php]\ext.

Пропишите драйверы в шаблоне конфига: .\userdata\config\PHP-[ваша_версия_php]_php.ini:
extension=php_pdo_sqlsrv.dll
extension=php_sqlsrv.dll
Перезапустите OSPanel, если был запущен.

Re: Ошибка Uncaught exception 'PDOException' with message 'could not find driver'

Добавлено: 10 сен 2018, 20:47
orogastus
Спасибо огромное!

Re: Ошибка Uncaught exception 'PDOException' with message 'could not find driver'

Добавлено: 07 сен 2021, 18:05
voron121
Всем привет. ничего понять не могу. Вроде бы все должно работать а по факту такая же ошибка как и выше описано. Экстеншен есть, с phpinfo вроде бы все ок, сервер только сегодня установил (скачал свежую сборку)
При этом замечено что из консоли винды или phpshtorm ошибка есть, а при запуске того же скрипта в консоле openserver все ок
Изображение
Изображение

Re: Ошибка Uncaught exception 'PDOException' with message 'could not find driver'

Добавлено: 07 сен 2021, 18:47
Максим
voron121, вы ничего не можете понять, т.к. не читали или невнимательно прочитали руководство пользователя. В противном случае вы могли бы знать, что корректная среда окружения доступна только в тех программах, что запускаются из меню Open Server. А когда вы запускаете свои обычные программы в Windows они естественно не видят переменные окружения Open Server и вы получаете то, что получаете.

На будущее, предвидя ваше следующее непонимание, замечу, что если вы меняете версию любого модуля в настройках, то меняется и окружение. Поэтому программы, запущенные из меню ранее, необходимо перезапускать, чтобы они увидели обновлённое окружение. Всё это указано в руководстве.