⊗ppSpPDCn 56 of 83 menu

Tietokantayhteys PDO:n kautta PHP:ssä

Muodostetaan yhteys tietokantaan PDO:n kautta. Aluksi tallennamme kirjautumistiedot muuttujiin:

<?php $host = 'localhost'; // isäntänimi (yleensä aina tämä) $db = 'test'; // tietokannan nimi $user = 'root'; // käyttäjätunnus tietokantaan $pass = 'root'; // salasana tietokantaan ?>

Nyt meidän on muodostettava merkkijono erityisessä muodossa. Tässä merkkijonossa meidän on määritettävä käytetyn tietokannan tyyppi (yleensä 'mysql'), isäntänimi ja tietokannan nimi:

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

Seuraavaksi luomme PDO-asetusten taulukon, jota käytämme työn aikana (älä syvenny niihin tässä vaiheessa):

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

Nyt voimme muodostaa yhteyden tietokantaan käyttämällä yllä määriteltyjä muuttujia:

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

Yllä oleva koodi joko muodostaa yhteyden tietokantaan tai heittää poikkeuksen. Sen vuoksi on oikein kääriä yhteys try-catch-rakenteeseen:

<?php try { $pdo = new PDO($dsn, $user, $pass, $opt); echo 'Tietokanta on yhteydessä'; } catch(PDOException $e) { echo "Yhteyden muodostaminen epäonnistui: " . $e->getMessage(); } ?>

Koko koodi näyttää tältä:

<?php $host = 'localhost'; $db = 'test'; $user = ''; // käyttäjätunnus tietokantaan $pass = ''; // salasana tietokantaan $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 'Tietokanta on yhteydessä'; } catch(PDOException $e) { echo "Yhteyden muodostaminen epäonnistui: " . $e->getMessage(); } ?>

Muodosta yhteys tietokantaasi oppitunnissa kuvatulla tavalla.

Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää