⊗ppSpPDCn 56 of 83 menu

Conexión a BD mediante PDO en PHP

Vamos a establecer una conexión con la BD mediante PDO. Primero, guardemos las credenciales en variables:

<?php $host = 'localhost'; // nombre del host (generalmente siempre es este) $db = 'test'; // nombre de la BD $user = 'root'; // usuario para acceder a la BD $pass = 'root'; // contraseña para acceder a la BD ?>

Ahora necesitamos formar una cadena en un formato especial. En esta cadena debes especificar el tipo de BD utilizada (generalmente 'mysql'), el nombre del host y el nombre de la BD:

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

Luego creamos un array de opciones de PDO, que utilizaremos durante el proceso de trabajo (por ahora no profundices en ellas):

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

Ahora podemos realizar la conexión a la base de datos, utilizando las variables declaradas anteriormente:

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

El código anterior realizará la conexión a la base de datos o lanzará una excepción. Por lo tanto, es más correcto envolver la conexión en una estructura try-catch:

<?php try { $pdo = new PDO($dsn, $user, $pass, $opt); echo 'DB is connected'; } catch(PDOException $e) { echo "Connection failed: " . $e->getMessage(); } ?>

El código completo se verá así:

<?php $host = 'localhost'; $db = 'test'; $user = ''; // usuario para acceder a la BD $pass = ''; // contraseña para acceder a la BD $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(); } ?>

Establece una conexión con tu BD utilizando el método descrito en la lección.

Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar