⊗ppSpPDCn 56 of 83 menu

Połączenie z bazą danych przez PDO w PHP

Wykonajmy połączenie z bazą danych przez PDO. Na początek zapiszmy dane dostępowe w zmiennych:

<?php $host = 'localhost'; // nazwa hosta (zazwyczaj zawsze taka) $db = 'test'; // nazwa bazy danych $user = 'root'; // nazwa użytkownika do logowania do BD $pass = 'root'; // hasło do logowania do BD ?>

Teraz musimy utworzyć ciąg znaków w specjalnym formacie. W tym ciągu musimy podać typ używanej bazy danych (zazwyczaj 'mysql'), nazwę hosta i nazwę bazy danych:

<?php $dsn = "mysql:host=$host; dbname=$db; charset=utf8"; ?>

Następnie tworzymy tablicę opcji PDO, których będziemy używać w procesie pracy (na razie się w nie nie zagłębiaj):

<?php $opt = [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES => false, ]; ?>

Teraz możemy nawiązać połączenie z bazą danych, używając zadeklarowanych powyżej zmiennych:

<?php $pdo = new PDO($dsn, $user, $pass, $opt); ?>

Powyższy kod albo nawiąże połączenie z bazą danych, albo rzuci wyjątek. Dlatego bardziej poprawne jest opakowanie połączenia w konstrukcję try-catch:

<?php try { $pdo = new PDO($dsn, $user, $pass, $opt); echo 'DB is connected'; } catch(PDOException $e) { echo "Connection failed: " . $e->getMessage(); } ?>

Pełny kod będzie wyglądał tak:

<?php $host = 'localhost'; $db = 'test'; $user = ''; // nazwa użytkownika do logowania do BD $pass = ''; // hasło do logowania do BD $charset = 'utf8'; $dsn = "mysql:host=$host; dbname=$db; charset=$charset"; $opt = [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES => false, ]; try { $pdo = new PDO($dsn, $user, $pass, $opt); echo 'DB is connected'; } catch(PDOException $e) { echo "Connection failed: " . $e->getMessage(); } ?>

Nawiąż połączenie z twoją bazą danych w sposób opisany w lekcji.

Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć