• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed PDO could not find driver, docker

VPS Starter Arubacloud
0 głosów
833 wizyt
pytanie zadane 22 maja 2017 w PHP przez mizeriowy Użytkownik (650 p.)
zamknięte 23 maja 2017 przez mizeriowy

Nie mogę utworzyć instancji PDO. Korzystam z kontenera stworzonego z oficjalnego obrazu php:7.1.5-apache, ten kontener jest połączony z kontenerem z mysql.

Z phpinfo()

 

PDO

PDO support enabled
PDO drivers sqlite

pdo_sqlite

PDO Driver for SQLite 3.x enabled
SQLite Library
3.15.1
 
mysqlnd enabled
Version mysqlnd 5.0.12-dev - 20150407 - $Id: b396954eeb2d1d9ed7902b8bae237b287f21ad9e $
Compression supported
core SSL supported
extended SSL supported
Command buffer size 4096
Read buffer size 32768
Read timeout 31536000
Collecting statistics Yes
Collecting memory statistics No
Tracing n/a
Loaded plugins mysqlnd,debug_trace,auth_plugin_mysql_native_password,auth_plugin_mysql_clear_password,auth_plugin_sha256_password
API Extensions no value

php -m | grep pdo  zwraca:
pdo_sqlite

komentarz zamknięcia: Przesiadłem się na Ubuntu, nie używam na razie Dockera.

1 odpowiedź

0 głosów
odpowiedź 22 maja 2017 przez CzikaCarry Szeryf (75,340 p.)
Skopiuj zawartość PHP.ini, wrzuć na pastebin.com i podaj linka, to coś podziałamy :)
komentarz 22 maja 2017 przez mizeriowy Użytkownik (650 p.)
edycja 22 maja 2017 przez mizeriowy

Pobrałem go stąd https://github.com/php/php-src, bo defaultowego php.ini nie ma w tym obrazie. Próbowałem odznaczać niektóre rozszerzenia według porad które znalazłem ale nic nie dało więc domyślnie są wyłączone.


Mój kod z PDO:
 

$user='root';
$pass='password';
try{
$db = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
 echo "success";
}catch (PDOException $e){
    echo $e->getMessage();
}



https://pastebin.com/B1PVU50R

komentarz 22 maja 2017 przez CzikaCarry Szeryf (75,340 p.)

Na początku wyłącz PHP. W linijkach 909-914 usuń średniki na początku linijek i przed tymi linijkami dodaj linijkę:

extension=php_pdo.dll

Ps. Jesteś na windowsie czy linuksie?

komentarz 22 maja 2017 przez mizeriowy Użytkownik (650 p.)
edycja 22 maja 2017 przez mizeriowy
Ja na Windowsie + Docker.

Edit: Nadal to samo.
komentarz 22 maja 2017 przez CzikaCarry Szeryf (75,340 p.)
Usuń średnik przed linijką 739 oraz sprawdź, czy podana ścieżka się zgadza. Jeśli nadal nie będzie działać zmień ścieżkę na absolutną.

Podobne pytania

0 głosów
2 odpowiedzi 3,059 wizyt
pytanie zadane 28 kwietnia 2018 w SQL, bazy danych przez bwl Obywatel (1,530 p.)
0 głosów
1 odpowiedź 132 wizyt
pytanie zadane 10 sierpnia 2020 w SQL, bazy danych przez Bakkit Dyskutant (7,600 p.)
0 głosów
1 odpowiedź 361 wizyt
pytanie zadane 6 czerwca 2018 w SQL, bazy danych przez Adrian Paź Obywatel (1,270 p.)

92,452 zapytań

141,262 odpowiedzi

319,074 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...