⊗ppSpPDCn 56 of 83 menu

Повезивање са базом података кроз PDO у PHP-у

Хајде да извршимо повезивање са базом података кроз PDO. За почетак, упишимо податке за приступ у променљиве:

<?php $host = 'localhost'; // име хоста (углавном је увек исто) $db = 'test'; // име базе података $user = 'root'; // корисничко име за приступ бази $pass = 'root'; // лозинка за приступ бази ?>

Сада треба да формирамо стринг у специјалном формату. У овом стрингу морамо навести тип коришћене базе података (углавном, 'mysql'), име хоста и име базе података:

<?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štinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј