⊗ppSpPDCn 56 of 83 menu

Σύνδεση με ΒΔ μέσω PDO στην PHP

Ας εκτελέσουμε σύνδεση με τη ΒΔ μέσω PDO. Αρχικά, ας αποθηκεύσουμε τα διαπιστευτήρια σε μεταβλητές:

<?php $host = 'localhost'; // όνομα host (συνήθως παραμένει το ίδιο) $db = 'test'; // όνομα ΒΔ $user = 'root'; // όνομα χρήστη για σύνδεση στη ΒΔ $pass = 'root'; // κωδικός πρόσβασης για σύνδεση στη ΒΔ ?>

Τώρα πρέπει να δημιουργήσουμε μια συμβολοσειρά σε ειδική μορφή. Σε αυτή τη συμβολοσειρά πρέπει να καθορίσουμε τον τύπο της ΒΔ που χρησιμοποιούμε (συνήθως, 'mysql'), το όνομα του host και το όνομα της ΒΔ:

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

Στη συνέχεια, δημιουργούμε έναν πίνακα με επιλογές PDO, που θα χρησιμοποιούμε κατά τη διάρκεια της εργασίας (μην εμβαθύνετε προς το παρόν):

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

Τώρα μπορούμε να εκτελέσουμε σύνδεση στη βάση δεδομένων, χρησιμοποιώντας τις μεταβλητές που δηλώθηκαν παραπάνω:

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

Ο παραπάνω κώδικας είτε θα εκτελέσει σύνδεση στη βάση δεδομένων, είτε θα εγείρει μια εξαίρεση. Επομένως, είναι πιο σωστό να τυλίξουμε τη σύνδεση σε μια κατασκευή try-catch:

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

Ο πλήρης κώδικας θα μοιάζει έτσι:

<?php $host = 'localhost'; $db = 'test'; $user = ''; // όνομα χρήστη για σύνδεση στη ΒΔ $pass = ''; // κωδικός πρόσβασης για σύνδεση στη ΒΔ $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(); } ?>

Δημιουργήστε σύνδεση με τη ΒΔ σας με τον τρόπο που περιγράφεται στο μάθημα.

Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη