⊗ppSpPDCn 56 of 83 menu

Verbinding met database via PDO in PHP

Laten we een verbinding met de database maken via PDO. Laten we eerst de toegangsgegevens in variabelen opslaan:

<?php $host = 'localhost'; // hostnaam (meestal is dit altijd zo) $db = 'test'; // databasenaam $user = 'root'; // gebruikersnaam voor database toegang $pass = 'root'; // wachtwoord voor database toegang ?>

Nu moeten we een string vormen in een speciaal formaat. In deze string moeten we het type gebruikte database specificeren (meestal 'mysql'), hostnaam en databasenaam:

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

Vervolgens maken we een array met PDO-opties, die we tijdens het werk zullen gebruiken (probeer ze voor nu niet volledig te begrijpen):

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

Nu kunnen we verbinding maken met de database, gebruikmakend van de bovenstaande variabelen:

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

De bovenstaande code zal ofwel verbinding maken met de database, ofwel een uitzondering (exception) genereren. Daarom is het beter om de verbinding in een try-catch constructie te plaatsen:

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

De volledige code ziet er als volgt uit:

<?php $host = 'localhost'; $db = 'test'; $user = ''; // gebruikersnaam voor database toegang $pass = ''; // wachtwoord voor database toegang $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(); } ?>

Stel een verbinding met uw database in op de manier die in de les wordt beschreven.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren