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
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
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; } } ?>
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; } } ?>
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.
• 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
• Michelles Jaque
• Beatriz Cabrera Zapata
• Mini Poesías - Constanza Gonzales
• Sobre las decisiones - Constanza Gonzales
• 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