Qué es y cómo usar PDO para conectarse a una base de datos MySQL

Acerca de PDO

La extensión Objetos de Datos de PHP (PDO) define una interfaz ligera para poder acceder a bases de datos en PHP.

PDO proporciona una capa de abstracción de acceso a datos, lo que significa que independientemente de la base de datos que se esté utilizando, se emplean las mismas funciones para realizar consultas y obtener datos. PDO viene incluido a partir de la versión PHP 5.1

PDO PHP MySQL

Instalación

Usuarios de Windows: En versiones anteriores a PHP 5.3 se debe editar el archivo php.ini como se muestra en este código (descomentar las líneas)

      extension=php_pdo.dll

      extension=php_pdo_mysql.dll
      

Crear una conexión

Las conexiones se establecen creando instancias de la clase PDO. El constructor acepta parámetros para especificar el origen de la base de datos (conocido como DSN) y opcionalmente, el nombre de usuario y la contraseña (si la hubiera). Si hubieran errores de conexión, se lanzará un objeto PDOException. Archivo conexion.php

      <?php
      class Conexion
      {
        public function get_Conexion(){
        $user = "root";
        $pass = "";
        $host = "localhost";
        $dbname = "test";

        try{
        $conexion = new PDO("mysql:host=$host; dbname=$dbname;", $user, $pass);
        $conexion->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        }
        catch(PDOException $e){
        echo $e->getMessage();
        }
        return $conexion;
        }
      }
      ?>
      

Generar una consulta

Archivo consultas.php

    <?php
    class Consultas {
    public function cargarProductos(){
    $rows = null;
    $modelo = new Conexion();
    $conexion = $modelo -> get_Conexion();
    $sql = "select * from productos order by id_producto asc";
    $statement = $conexion -> prepare($sql);
    $statement -> execute();
    while ($result = $statement -> fetch()) {
      $rows[] = $result;
    }
    return $rows;
    }
    }
    ?>
    

Generar una vista

Archivo cargar.php

    <?php
    function cargar(){
    $consultas = new Consultas();
    $filas = $consultas -> cargarProductos();
    echo "<table border='1'><tr>
    <th>ID</th>
    <th>Nombre</th>
    <th>Descripción</th>
    <th>Categoría</th>
    <th>Precio</th>
    <th>Eliminar</th>
    <th>Modificar</th>
    </tr>";
    foreach ($filas as $fila) {
    echo "<tr>";
    echo "<td>".$fila['id_producto']."</td>";
    echo "<td>".$fila['nombre']."</td>";
    echo "<td>".$fila['descripcion']."</td>";
    echo "<td>".$fila['categoria']."</td>";
    echo "<td>".$fila['precio']."</td>";
    echo "<td><a href='Controlador/eliminar.php?id_producto=".$fila['id_producto']."'>Eliminar</a></td>";
    echo "<td><a href='modificar.php?id_producto=".$fila['id_producto']."'>Modificar</a></td>";
    echo "</tr>";
    }
    echo "</table>";
    }
    ?>
    

Archivo verproductos.php

<?php
require_once ("Modelo/conexion.php");
require_once ("Modelo/consultas.php");
require_once ("Controlador/cargar.php");
?>
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8">
  <title>ver productos - PDO</title>
</head>
<body>
<h3>Mis productos</h3>
<div>
  <?php cargar(); ?>
</div>
</body>
</html>
    

Bueno espero que este tutorial haya sido de utilidad, es una especie de introducción al uso de PDO y si tienen preguntas o comentarios no duden en enviarlos

Bien, como ya les había comentado dejé disponible una demostración de este código en este enlace además del código fuente para descargar.

Sobre programación web

• Validación de formularios usando características de HTML5
• Método para insertar registros en MySQL usando PHP
• Obtener datos desde MySQL y mostrar el resultado en una tabla
• Los colores y sus códigos RGB
• Cómo evitar los comentarios spam
• Creando un login simple con jquery, php y mysql
• Conversor de Medidas Online
• Visualizar datos en una tabla parte II: Aplicando estilo css
• Un ejemplo de ABM usando Ajax - PHP - MySQL
• Usando jquery para modificar elementos del HTML
• Usar PDO para conectarse a MYSQL
• Cómo detectar el navegador usando JavaScript
• Cómo desarmar un notebook HP Compaq Presario C700
• Proyecto Intranet: Ordenes de servicio y ventas

Fotografía

• Michelles Jaque
• Beatriz Cabrera Zapata

Poesías

• Mini Poesías - Constanza Gonzales
• Sobre las decisiones - Constanza Gonzales

Últimas Publicaciones

• Enviar correos usando un formulario desde sitio web o localhost con PHPMailer
• Cómo crear un cuadro de búsqueda al estilo Google
• Sistema de LogIn con verificación de email y recuperación de contraseña usando PHP
• Demostración Jquery UI Selectable usando php y bases de datos mysql
• Subir, insertar, actualizar, borrar imágenes con PHP y MySQL
• Calculadora IMC usando JavaScript
• Select Dependientes con Ajax MySQL PHP
• Expresiones regulares en PHP
• Cómo convertir datos MySQL en formato JSON en PHP
• Visualizar datos en una tabla html con mysqli
• Siembras: Aplicación en Laravel 5.5

Newsletter



Gracias. Te mantendremos informado

Website Template por IdeasChile © Optimizado para Chrome - Firefox - Opera