⊗ppSpPDCn 56 of 83 menu

Andmebaasiühenduse loomine PDO kaudu PHP-s

Loome ühenduse andmebaasiga PDO kaudu. Alustuseks salvestame ligipääsuväärtused muutujatesse:

<?php $host = 'localhost'; // hosti nimi (enamasti alati selline) $db = 'test'; // andmebaasi nimi $user = 'root'; // andmebaasi kasutajanimi $pass = 'root'; // andmebaasi parool ?>

Nüüd peame moodustama spetsiaalses formaadis stringi. Selles stringis peame määrama kasutatava andmebaasi tüübi (enamasti 'mysql'), hosti nime ja andmebaasi nime:

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

Seejärel loome PDO valikute massiivi, mida me kasutame tööprotsessis (ärge veel süvenege nendesse):

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

Nüüd saame luua ühenduse andmebaasiga, kasutades eelnevalt deklareeritud muutujaid:

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

Eelpool toodud kood kas loob ühenduse andmebaasiga või viskab erindi. Seetõttu on õigem panna ühenduse loomine try-catch konstruktsiooni sisse:

<?php try { $pdo = new PDO($dsn, $user, $pass, $opt); echo 'Andmebaas on ühendatud'; } catch(PDOException $e) { echo "Ühendus ebaõnnestus: " . $e->getMessage(); } ?>

Täielik kood näeb välja selline:

<?php $host = 'localhost'; $db = 'test'; $user = ''; // andmebaasi kasutajanimi $pass = ''; // andmebaasi parool $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 'Andmebaas on ühendatud'; } catch(PDOException $e) { echo "Ühendus ebaõnnestus: " . $e->getMessage(); } ?>

Loo ühendus oma andmebaasiga õppetükis kirjeldatud viisil.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu