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

PDOException: could not find driver

Object Storage Arubacloud
0 głosów
3,088 wizyt
pytanie zadane 28 kwietnia 2018 w SQL, bazy danych przez bwl Obywatel (1,530 p.)

Hej.

Tak jak w temacie, próbuje przepracować odc. 5 z kursu php MZ.

Przy próbie połączenia z bazą rzuca wyjątkiem:

PDOException: could not find driver in C:\xampp\htdocs\leki_pdo\database.php:15 Stack trace: #0 C:\xampp\htdocs\leki_pdo\database.php(15): PDO->__construct('msql:host=local...', 'root', '', Array) #1 C:\xampp\htdocs\leki_pdo\add.php(4): require_once('C:\\xampp\\htdocs...') #2 {main}Database error

Próbowałem kilku rozwiązań z internetów, ale okazały się nieskuteczne...

Z góry dzięki !

2 odpowiedzi

0 głosów
odpowiedź 28 kwietnia 2018 przez Bosswell Nałogowiec (36,470 p.)

new PDO( 'mysql:host=localhost;dbname=nazwa_bazy', 'root', '')

Jakie to były próby rozwiązań, jeśli mogę wiedzieć ?

komentarz 28 kwietnia 2018 przez bwl Obywatel (1,530 p.)
To nie to.

Nazwa bazy, użytkownik, hasło i host siedzą w tablicy asocjacyjnej, a ten 'host' to index tablicy $config, w której kluczem jest właśnie localhost.
1
komentarz 28 kwietnia 2018 przez Bosswell Nałogowiec (36,470 p.)
No ok, ale masz msql zamiast mysql. Tak wynika z tego błędu. Pokaż kod, to coś więcej zobaczę.
komentarz 30 kwietnia 2018 przez bwl Obywatel (1,530 p.)
edycja 30 kwietnia 2018 przez bwl

Ja to jestem mistrzem w tych literówkach ;/

Po poprawieniu zniknął błąd dotyczący sterowników, ale nadal się nie łączy:

 PDOException: SQLSTATE[HY000] [2019] Unknown character set in C:\xampp\htdocs\leki_pdo\database.php:15 Stack trace: #0 C:\xampp\htdocs\leki_pdo\database.php(15): PDO->__construct('mysql:host=loca...', 'root', '', Array) #1 C:\xampp\htdocs\leki_pdo\add.php(4): require_once('C:\\xampp\\htdocs...') #2 {main}Database error

config.php

<?php

return
    [   'host' => "localhost",
        'user' => 'root',
        'password' => '',
        'database' => 'badania'
    ];

database.php

<?php

$config = require_once 'config.php';

try
{
    $db = new PDO
    (
        "mysql:host={$config ['host']};
        dbname={$config ['database']};
        charset=utf-8",
        $config ['user'],
        $config['password'],
        [
            PDO::ATTR_EMULATE_PREPARES => false,
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
        ]
    );
}

catch (PDOException $error)
{
    echo $error;
    exit('Database error');
}
komentarz 30 kwietnia 2018 przez Bosswell Nałogowiec (36,470 p.)

W linii 11 zmień

charset=utf-8",

Na:

charset=utf8",

I zamiast wypisania całego obiektu "echo $error", Polecam "echo $error->getMessage()". Bardziej przejrzyście.

komentarz 30 kwietnia 2018 przez bwl Obywatel (1,530 p.)
Tak specjalnie na razie zostawiłem, żeby więcej pokazywało. W każdym razie zadziałało a ja pięknie dziękuję za pomoc :)
0 głosów
odpowiedź 30 kwietnia 2018 przez bwl Obywatel (1,530 p.)

Może jednak przyda się konfiguracja, tu php.ini

https://pastebin.com/MhahVkAg

a tutaj php info()

http://bewuel.ayz.pl/phpinfo().pdf

Podobne pytania

0 głosów
1 odpowiedź 846 wizyt
pytanie zadane 22 maja 2017 w PHP przez mizeriowy Użytkownik (650 p.)
0 głosów
1 odpowiedź 134 wizyt
pytanie zadane 10 sierpnia 2020 w SQL, bazy danych przez Bakkit Dyskutant (7,600 p.)
0 głosów
1 odpowiedź 363 wizyt
pytanie zadane 6 czerwca 2018 w SQL, bazy danych przez Adrian Paź Obywatel (1,270 p.)

92,572 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,959 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

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy 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!

...