Ver Mensaje Individual
  #5 (permalink)  
Antiguo 21/11/2011, 14:01
funkfarron
 
Fecha de Ingreso: mayo-2010
Mensajes: 12
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean g

Esta es la parte donde me conecto a la BD
Código PHP:
Ver original
  1. class Conexion  // se declara una clase para hacer la conexion con la base de datos
  2. {
  3.     var $con;
  4.     function Conexion()
  5.              
  6.     {
  7.         // se definen los datos del servidor de base de datos
  8.         $conection['server']="localhost";  //host
  9.         $conection['user']="root";         //  usuario
  10.         $conection['pass']="";      //password
  11.         $conection['base']="mdmbd";         //base de datos
  12.        
  13.        
  14.         // crea la conexion pasandole el servidor , usuario y clave
  15.         $conect= mysql_pconnect($conection['server'],$conection['user'],$conection['pass']);
  16.  
  17.  
  18.            
  19.         if ($conect) // si la conexion fue exitosa , selecciona la base
  20.         {
  21.             mysql_select_db($conection['base']);           
  22.             $this->con=$conect;
  23.         }
  24.     }
  25.     function getConexion() // devuelve la conexion
  26.     {
  27.         return $this->con;
  28.     }
  29.     function Close()  // cierra la conexion
  30.     {
  31.         mysql_close($this->con);
  32.     }  
  33.  
  34. }
  35.  
  36.  
  37.  
  38.  
  39. class sQuery   // se declara una clase para poder ejecutar las consultas, esta clase llama a la clase anterior
  40. {
  41.  
  42.     var $pconeccion;
  43.     var $pconsulta;
  44.     var $resultados;
  45.     function sQuery()  // constructor, solo crea una conexion usando la clase "Conexion"
  46.     {
  47.         $this->pconeccion= new Conexion();
  48.     }
  49.     function executeQuery($cons)  // metodo que ejecuta una consulta y la guarda en el atributo $pconsulta
  50.     {
  51.         $this->pconsulta= mysql_query($cons,$this->pconeccion->getConexion());
  52.         return $this->pconsulta;
  53.     }  
  54.     function getResults()   // retorna la consulta en forma de result.
  55.     {return $this->pconsulta;} 
  56.    
  57.     function Close()        // cierra la conexion
  58.     {$this->pconeccion->Close();}  
  59.    
  60.     function Clean() // libera la consulta
  61.     {mysql_free_result($this->pconsulta);}
  62.    
  63.     function getResultados() // debuelve la cantidad de registros encontrados
  64.     {return mysql_affected_rows($this->pconeccion->getConexion()) ;}
  65.    
  66.     function getAffect() // devuelve las cantidad de filas afectadas
  67.     {return mysql_affected_rows($this->pconeccion->getConexion()) ;}
  68. }
  69.  
  70.  
  71.  
  72.  
  73. class Usuario
  74. {
  75.     var $calle;     //se declaran los atributos de la clase, que son los atributos del cliente
  76.     var $numero;
  77.     var $distrito;
  78.     var $departamento;
  79.     var $nombre;
  80.     var $apellido;
  81.     var $profesion;
  82.     var $telefono;
  83.     var $email;
  84.     var $dni;
  85.     var $id;
  86.  
  87.    
  88.  
  89.     function Usuario($nro=0) // declara el constructor, si trae el numero de cliente lo busca , si no, trae todos los clientes
  90.     {
  91.         if ($nro!=0)
  92.         {
  93.             $obj_usuario=new sQuery();
  94.             $result=$obj_usuario->executeQuery("select * from users where id = $nro"); // ejecuta la consulta para traer al cliente
  95.             $row=mysql_fetch_array($result);
  96.             $this->id=$row['id'];
  97.             $this->nombre=$row['nombre'];
  98.             $this->apellido=$row['apellido'];
  99.             $this->profesion=$row['profesion'];
  100.             $this->telefono=$row['telefono'];
  101.             $this->email=$row['email'];
  102.             $this->dni=$row['dni'];
  103.             $this->calle=$row['calle'];
  104.             $this->numero=$row['numero'];
  105.             $this->distrito=$row['distrito'];
  106.             $this->departamento=$row['departamento'];
  107.             }
  108.     }
  109.     function getUsuarios() // este metodo podria no estar en esta clase, se incluye para simplificar el codigo, lo que hace es traer todos los clientes
  110.         {
  111.             $obj_usuario=new sQuery();
  112.             $result=$obj_usuario->executeQuery("select * from users"); // ejecuta la consulta para traer al cliente
  113.             return $result; // retorna todos los clientes
  114.         }
  115.        
  116.         // metodos que devuelven valores
  117.     function getId()
  118.      { return $this->id;}
  119.     function getNombre()
  120.      { return $this->nombre;}
  121.     function getApellido()
  122.      { return $this->apellido;}
  123.     function getProfesion()
  124.      { return $this->profesion;}
  125.     function getTelefono()
  126.      { return $this->telefono;}
  127.     function getEmail()
  128.      { return $this->email;}
  129.     function getDni()
  130.      { return $this->dni;}
  131.     function getCalle()
  132.      { return $this->calle;}
  133.     function getNumero()
  134.      { return $this->numero;}
  135.     function getDistrito()
  136.      { return $this->distrito;}
  137.     function getDepartamento()
  138.      { return $this->departamento;}
  139.  
  140.  
  141.         // metodos que setean los valores
  142.     function setNombre($val)
  143.      { $this->nombre=$val;}
  144.     function setApellido($val)
  145.      {  $this->apellido=$val;}
  146.     function setProfesion($val)
  147.      {  $this->profesion=$val;}
  148.     function setTelefono($val)
  149.      {  $this->telefono=$val;}
  150.     function setEmail($val)
  151.      {  $this->email=$val;}
  152.     function setDni($val)
  153.      {  $this->dni=$val;}
  154.     function setCalle($val)
  155.      {  $this->calle=$val;}
  156.     function setNumero($val)
  157.      {  $this->numero=$val;}
  158.     function setDistrito($val)
  159.      {  $this->distrito=$val;}
  160.     function setDepartamento($val)
  161.      {  $this->departamento=$val;}
  162.  
  163.     function updateUsuario()    // actualiza el cliente cargado en los atributos
  164.     {
  165.             $obj_usuario=new sQuery();
  166.             $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";
  167.             $obj_usuario->executeQuery($query); // ejecuta la consulta para traer al cliente
  168.         return $query .'<br/>Registros afectados: '.$obj_usuario->getAffect(); // retorna todos los registros afectados
  169.    
  170.     }
  171.     function insertUsuario()    // inserta el cliente cargado en los atributos
  172.     {
  173.             $obj_usuario=new sQuery();
  174.             $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')";
  175.            
  176.             $obj_usuario->executeQuery($query); // ejecuta la consulta para traer al cliente
  177.             return $query .'<br/>Registros afectados: '.$obj_usuario->getAffect(); // retorna todos los registros afectados
  178.    
  179.     }  
  180.     function deleteUsuario($val)    // elimina el cliente
  181.     {
  182.             $obj_usuario=new sQuery();
  183.             $query="delete from clientes where id=$val";
  184.             $obj_usuario->executeQuery($query); // ejecuta la consulta para  borrar el cliente
  185.             return $query .'<br/>Registros afectados: '.$obj_usuario->getAffect(); // retorna todos los registros afectados
  186.    
  187.     }  
  188. }