Advertisement
KaeruCT

DataAccess

Jul 7th, 2011
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.04 KB | None | 0 0
  1. <?php
  2.  
  3. /*
  4.     Autor: Ernesto Villarreal
  5.     Fecha de creación: 07/07/2011
  6.     Fecha de última actualización: 07/07/2011
  7. */
  8.  
  9.     class DataAccess
  10.     {
  11.         private $num_consultas;
  12.         private $num_filas;
  13.         private $conexion;
  14.  
  15.         public function __construct()
  16.         {
  17.             // revisa si no hay conexion para hacerla
  18.             if(!isset($this->conexion))
  19.             {
  20.                 $this->num_consultas = 0;
  21.                 $this->num_filas = 0;
  22.            
  23.                 // conectarse al servidor MySQL
  24.                 $this->conexion = $this->connect('localhost', 'root', '');
  25.                
  26.                 // seleccionar la base de datos sistema_pedidos
  27.                 $this->selectdb('sistema_pedidos');
  28.             }
  29.         }
  30.  
  31.         private function connect($host, $user, $pass)
  32.         {
  33.             // conectarse al servidor MySQL
  34.             return mysql_connect($host, $user, $pass) or die(mysql_error());
  35.         }
  36.  
  37.         private function selectdb($dbname, $conexion=$this->conexion)
  38.         {
  39.             // seleccionar la base de datos
  40.             return mysql_select_db($dbname, $conexion) or die(mysql_error());
  41.         }
  42.  
  43.         // funcion para filtrar contra inyecciones sql
  44.         public function escape($str)
  45.         {
  46.             return mysql_real_escape_string($str);
  47.         }
  48.  
  49.         // funcion que hace una consulta
  50.         public function query($query)
  51.         {
  52.             if($result = mysql_query($query))
  53.             {
  54.                 // incrementar la cantidad de consultas realizadas
  55.                 $this->num_consultas++;
  56.             }
  57.             else
  58.             {
  59.                 echo 'Error MySQL: '.mysql_error();
  60.             }
  61.  
  62.             return $result;
  63.         }
  64.  
  65.         // funcion que devuelve un arreglo asociativo con los datos de la consulta
  66.         public function fetch_arr($result)
  67.         {
  68.             // si se envio un resultado valido y se "fetcheo" el arreglo correctamente
  69.             // incrementar la cantidad de filas y devolver el arreglo
  70.             if($result && $arreglo = mysql_fetch_array($result, MYSQL_ASSOC))
  71.             {
  72.                 $this->num_filas++;
  73.                 return $arreglo;
  74.             }
  75.          
  76.         }
  77.  
  78.         // hace la consulta y devuelve el arreglo de una vez
  79.         // esta funcion es para ser utilizada en consultas en las que solamente se retorna una fila
  80.         function fetchq($query)
  81.         {
  82.             $result = $this->query($query);
  83.             return $this->fetch_arr($result);
  84.         }
  85.     }
  86. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement