⊗ppSpPDCn 56 of 83 menu

Forbindelse til database via PDO i PHP

Lad os etablere en forbindelse til databasen via PDO. Lad os starte med at gemme adgangsoplysningerne i variabler:

<?php $host = 'localhost'; // værtnavn (som regel altid sådan) $db = 'test'; // databasenavn $user = 'root'; // brugernavn til databaseadgang $pass = 'root'; // adgangskode til databaseadgang ?>

Nu skal vi danne en streng i et specielt format. I denne streng skal vi angive typen af database, der bruges (som regel 'mysql'), værtnavn og databasenavn:

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

Derefter opretter vi en række PDO-indstillinger, som vi vil bruge under arbejdet (forstå dem ikke fuldt ud endnu):

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

Nu kan vi oprette forbindelse til databasen ved at bruge de ovenstående variable:

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

Koden ovenfor vil enten oprette forbindelse til databasen eller kaste en undtagelse. Derfor er det mere korrekt at indpakke forbindelsen i en try-catch-konstruktion:

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

Den fulde kode vil se sådan ud:

<?php $host = 'localhost'; $db = 'test'; $user = ''; // brugernavn til databaseadgang $pass = ''; // adgangskode til databaseadgang $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(); } ?>

Etabler forbindelse til din database ved hjælp af metoden beskrevet i lektionen.

Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis