Lidhja me bazën e të dhënave përmes PDO në PHP
Le të kryejmë një lidhje me bazën e të dhënave përmes PDO. Së pari, le t'i shkruajmë kredencialet në variabla:
<?php
$host = 'localhost'; // emri i hostit (zakonisht është gjithmonë i tillë)
$db = 'test'; // emri i bazës së të dhënave
$user = 'root'; // emri i përdoruesit për hyrje në bazën e të dhënave
$pass = 'root'; // fjalëkalimi për hyrje në bazën e të dhënave
?>
Tani duhet të krijojmë një varg
në një format të veçantë. Në këtë varg
duhet të specifikojmë llojin e bazës së të dhënave që përdoret
(zakonisht, 'mysql'),
emrin e hostit dhe emrin e bazës së të dhënave:
<?php
$dsn = "mysql:host=$host; dbname=$db; charset=utf8";
?>
Pastaj krijojmë një grup me opsione PDO, që do t'i përdorim gjatë punës (mos u thelloni shumë tani për tani):
<?php
$opt = [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false,
];
?>
Tani mund të kryejmë lidhjen me bazën e të dhënave, duke përdorur variablat e deklaruar më sipër:
<?php
$pdo = new PDO($dsn, $user, $pass, $opt);
?>
Kodi i paraqitur më sipër ose do të krijojë lidhjen
me bazën e të dhënave, ose do të hedhë një përjashtim.
Prandaj është më mirë ta mbështjellim lidhjen
në një konstrukt try-catch:
<?php
try {
$pdo = new PDO($dsn, $user, $pass, $opt);
echo 'Baza e të dhënave është e lidhur';
} catch(PDOException $e) {
echo "Lidhja dështoi: " . $e->getMessage();
}
?>
Kodi i plotë do të duket keshtu:
<?php
$host = 'localhost';
$db = 'test';
$user = ''; // emri i përdoruesit për hyrje në bazën e të dhënave
$pass = ''; // fjalëkalimi për hyrje në bazën e të dhënave
$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 'Baza e të dhënave është e lidhur';
} catch(PDOException $e) {
echo "Lidhja dështoi: " . $e->getMessage();
}
?>
Vendosni një lidhje me bazën tuaj të të dhënave duke përdorur metodën e përshkruar në mësim.