⊗ppSpPDCn 56 of 83 menu

Konekcija sa bazom podataka preko PDO u PHP-u

Hajde da uspostavimo konekciju sa bazom podataka preko PDO. Za početak, upišimo podatke za pristup u promenljive:

<?php $host = 'localhost'; // ime hosta (uglavnom je uvek isto) $db = 'test'; // ime baze podataka $user = 'root'; // korisničko ime za pristup bazi podataka $pass = 'root'; // lozinka za pristup bazi podataka ?>

Sada treba da formiramo string u specijalnom formatu. U ovom stringu moramo da navedemo tip baze podataka koja se koristi (uglavnom, 'mysql'), ime hosta i ime baze podataka:

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

Zatim kreiramo niz opcija za PDO, koje ćemo koristiti u toku rada (za sada nemojte previše analizirati):

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

Sada možemo da izvršimo konekciju sa bazom podataka, koristeći gore definisane promenljive:

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

Gornji kod će ili uspostaviti konekciju sa bazom podataka, ili će baciti izuzetak. Stoga je ispravnije da umotamo konekciju u try-catch konstrukciju:

<?php try { $pdo = new PDO($dsn, $user, $pass, $opt); echo 'Baza podataka je povezana'; } catch(PDOException $e) { echo "Konekcija nije uspela: " . $e->getMessage(); } ?>

Kompletan kod će izgledati ovako:

<?php $host = 'localhost'; $db = 'test'; $user = ''; // korisničko ime za pristup bazi podataka $pass = ''; // lozinka za pristup bazi podataka $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 podataka je povezana'; } catch(PDOException $e) { echo "Konekcija nije uspela: " . $e->getMessage(); } ?>

Uspostavite konekciju sa vašom bazom podataka na način opisan u lekciji.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij