Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /*
- Autor: Ernesto Villarreal
- Fecha de creación: 07/07/2011
- Fecha de última actualización: 07/07/2011
- */
- class DataAccess
- {
- private $num_consultas;
- private $num_filas;
- private $conexion;
- public function __construct()
- {
- // revisa si no hay conexion para hacerla
- if(!isset($this->conexion))
- {
- $this->num_consultas = 0;
- $this->num_filas = 0;
- // conectarse al servidor MySQL
- $this->conexion = $this->connect('localhost', 'root', '');
- // seleccionar la base de datos sistema_pedidos
- $this->selectdb('sistema_pedidos');
- }
- }
- private function connect($host, $user, $pass)
- {
- // conectarse al servidor MySQL
- return mysql_connect($host, $user, $pass) or die(mysql_error());
- }
- private function selectdb($dbname, $conexion=$this->conexion)
- {
- // seleccionar la base de datos
- return mysql_select_db($dbname, $conexion) or die(mysql_error());
- }
- // funcion para filtrar contra inyecciones sql
- public function escape($str)
- {
- return mysql_real_escape_string($str);
- }
- // funcion que hace una consulta
- public function query($query)
- {
- if($result = mysql_query($query))
- {
- // incrementar la cantidad de consultas realizadas
- $this->num_consultas++;
- }
- else
- {
- echo 'Error MySQL: '.mysql_error();
- }
- return $result;
- }
- // funcion que devuelve un arreglo asociativo con los datos de la consulta
- public function fetch_arr($result)
- {
- // si se envio un resultado valido y se "fetcheo" el arreglo correctamente
- // incrementar la cantidad de filas y devolver el arreglo
- if($result && $arreglo = mysql_fetch_array($result, MYSQL_ASSOC))
- {
- $this->num_filas++;
- return $arreglo;
- }
- }
- // hace la consulta y devuelve el arreglo de una vez
- // esta funcion es para ser utilizada en consultas
- // en las que solamente se retorna una fila
- public function fetchq($query)
- {
- $result = $this->query($query);
- return $this->fetch_arr($result);
- }
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement