sábado, 6 de octubre de 2012
PDO PHP ejemplos con clasess
PHP Data Objects (PDO) nos proporciona una capa de accedo a Datos, utilizando las mismas funciones para diferentes bases de datos.
Lo primero es hacer la clase de conexión.
<?php class Database { public $db; // handle of the db connexion private static $dns = "mysql:host=localhost;dbname=northwind"; private static $user = "user"; private static $pass = "password"; private static $instance; public function __construct () { $this->db = new PDO(self::$dns,self::$user,self::$pass); } public static function getInstance() { if(!isset(self::$instance)) { $object= __CLASS__; self::$instance=new $object; } return self::$instance; } } ?>
Ahora vamos hacer unos ejemplos de Select / insert
Por ultimo los como usar estas clases
Espero les sirva.
<?php require_once "database.php"; class Cproducts { public function validar($codigo) { $cc = Database::getInstance(); $sql = "SELECT count(*) FROM products WHERE categoryid=:codigo "; $result = $cc->db->prepare($sql); $params = array("codigo" => $codigo); $result->execute($params); $affected_rows = $result->fetchColumn(); return ($affected_rows); //retorna numerico } public function Datos($codigo) { $cc = Database::getInstance(); $sql="SELECT * from products where categoryid=:codigo"; $result = $cc->db->prepare($sql); $params = array("codigo" => $codigo); $result->execute($params); return ($result); //retorna conjunto de datos } public function NuevoCategoria($nombre,$descripcion) { $cc = Database::getInstance(); $sql = "Insert into categories(nombre,descripcion)"; $sql .= " values( "; $sql .=" :nombre,:description)"; $result = $cc->db->prepare($sql); $params = array("nombre" =>$nombre, "descripcion" => $descripcion); $result->execute($params); } } ?>
Por ultimo los como usar estas clases
<?php require_once("class/Cproducts.php"); $aproducts = new Cproducts; $affected_rows=$aproducts->validar($codigo); $result=$aproducts->Datos($codigo); foreach($result as $row) { echo($row['productname']); } ?>
Espero les sirva.
Suscribirse a:
Comentarios de la entrada (Atom)
No hay comentarios.:
Publicar un comentario