class Conexion // se declara una clase para hacer la conexion con la base de datos
{
var $con;
function Conexion()
{
// se definen los datos del servidor de base de datos
$conection['server']="localhost"; //host
$conection['user']="root"; // usuario
$conection['pass']=""; //password
$conection['base']="mdmbd"; //base de datos
// crea la conexion pasandole el servidor , usuario y clave
$conect= mysql_pconnect($conection['server'],$conection['user'],$conection['pass']);
if ($conect) // si la conexion fue exitosa , selecciona la base
{
$this->con=$conect;
}
}
function getConexion() // devuelve la conexion
{
return $this->con;
}
function Close() // cierra la conexion
{
}
}
class sQuery // se declara una clase para poder ejecutar las consultas, esta clase llama a la clase anterior
{
var $pconeccion;
var $pconsulta;
var $resultados;
function sQuery() // constructor, solo crea una conexion usando la clase "Conexion"
{
$this->pconeccion= new Conexion();
}
function executeQuery($cons) // metodo que ejecuta una consulta y la guarda en el atributo $pconsulta
{
$this->pconsulta= mysql_query($cons,$this->pconeccion->getConexion()); return $this->pconsulta;
}
function getResults() // retorna la consulta en forma de result.
{return $this->pconsulta;}
function Close() // cierra la conexion
{$this->pconeccion->Close();}
function Clean() // libera la consulta
function getResultados() // debuelve la cantidad de registros encontrados
function getAffect() // devuelve las cantidad de filas afectadas
}
class Usuario
{
var $calle; //se declaran los atributos de la clase, que son los atributos del cliente
var $numero;
var $distrito;
var $departamento;
var $nombre;
var $apellido;
var $profesion;
var $telefono;
var $email;
var $dni;
var $id;
function Usuario($nro=0) // declara el constructor, si trae el numero de cliente lo busca , si no, trae todos los clientes
{
if ($nro!=0)
{
$obj_usuario=new sQuery();
$result=$obj_usuario->executeQuery("select * from users where id = $nro"); // ejecuta la consulta para traer al cliente
$this->id=$row['id'];
$this->nombre=$row['nombre'];
$this->apellido=$row['apellido'];
$this->profesion=$row['profesion'];
$this->telefono=$row['telefono'];
$this->email=$row['email'];
$this->dni=$row['dni'];
$this->calle=$row['calle'];
$this->numero=$row['numero'];
$this->distrito=$row['distrito'];
$this->departamento=$row['departamento'];
}
}
function getUsuarios() // este metodo podria no estar en esta clase, se incluye para simplificar el codigo, lo que hace es traer todos los clientes
{
$obj_usuario=new sQuery();
$result=$obj_usuario->executeQuery("select * from users"); // ejecuta la consulta para traer al cliente
return $result; // retorna todos los clientes
}
// metodos que devuelven valores
function getId()
{ return $this->id;}
function getNombre()
{ return $this->nombre;}
function getApellido()
{ return $this->apellido;}
function getProfesion()
{ return $this->profesion;}
function getTelefono()
{ return $this->telefono;}
function getEmail()
{ return $this->email;}
function getDni()
{ return $this->dni;}
function getCalle()
{ return $this->calle;}
function getNumero()
{ return $this->numero;}
function getDistrito()
{ return $this->distrito;}
function getDepartamento()
{ return $this->departamento;}
// metodos que setean los valores
function setNombre($val)
{ $this->nombre=$val;}
function setApellido($val)
{ $this->apellido=$val;}
function setProfesion($val)
{ $this->profesion=$val;}
function setTelefono($val)
{ $this->telefono=$val;}
function setEmail($val)
{ $this->email=$val;}
function setDni($val)
{ $this->dni=$val;}
function setCalle($val)
{ $this->calle=$val;}
function setNumero($val)
{ $this->numero=$val;}
function setDistrito($val)
{ $this->distrito=$val;}
function setDepartamento($val)
{ $this->departamento=$val;}
function updateUsuario() // actualiza el cliente cargado en los atributos
{
$obj_usuario=new sQuery();
$query="update users set nombre='$this->nombre', apellido='$this->apellido', profesion='$this->profesion', telefono='$this->telefono', email='$this->email', dni='$this->dni', calle='$this->calle', numero='$this->numero' ,distrito='$this->distrito', departamento='$this->departamento' where id = $this->id";
$obj_usuario->executeQuery($query); // ejecuta la consulta para traer al cliente
return $query .'<br/>Registros afectados: '.$obj_usuario->getAffect(); // retorna todos los registros afectados
}
function insertUsuario() // inserta el cliente cargado en los atributos
{
$obj_usuario=new sQuery();
$query="insert into users( nombre, apellido, profesion, telefono, email, dni, calle, numero, distrito, departamento)values('$this->nombre', '$this->apellido', '$this->profesion', '$this->telefono', '$this->email','$this->dni','$this->calle','$this->numero','$this->distrito','$this->departamento')";
$obj_usuario->executeQuery($query); // ejecuta la consulta para traer al cliente
return $query .'<br/>Registros afectados: '.$obj_usuario->getAffect(); // retorna todos los registros afectados
}
function deleteUsuario($val) // elimina el cliente
{
$obj_usuario=new sQuery();
$query="delete from clientes where id=$val";
$obj_usuario->executeQuery($query); // ejecuta la consulta para borrar el cliente
return $query .'<br/>Registros afectados: '.$obj_usuario->getAffect(); // retorna todos los registros afectados
}
}