Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/06/2010, 07:15
Avatar de SetheR
SetheR
 
Fecha de Ingreso: enero-2009
Mensajes: 265
Antigüedad: 16 años
Puntos: 44
Ayuda con clase de base de datos

Hola a todos.
Ultimamente he estado retocando mi clase de base de datos del modelo para manejar menos variables en los scripts de control. Por ejemplo, he metido la conexion a mysql dentro de una variable de clase.

Bueno, el tema es que ahora no funciona. Tampoco me arroja ningun error. He repasado varias veces el codigo, y seguro es una tontería, pero no lo veo. ¿alguien me puede decir qué tengo mal?

Un poco de mi codigo:
Código PHP:
class BaseDatos
{
    private 
$host;
    private 
$dbname;
    private 
$user;
    private 
$pass;
    private 
$conexion;

    function 
BaseDatos()
    {
        
$this->host "localhost";
        
$this->dbname "prueba";
        
$this->user "root";
        
$this->pass "";
    }

    public function 
Conectar()
    {
        
$this->conexion mysql_connect($this->host$this->user$this->pass);
        if (!
$this->conexion)
        {
            die (
'No se ha podido conectar: '.mysql_error());
        }
        
mysql_select_db($this->dbname$this->conexion) or die (mysql_error());
    }

    public function 
Consultar($consulta)
    {
        
$retorno mysql_query($consulta$this->conexion) or die (mysql_error());
        return 
$retorno;
    } 
EDIT: Os pongo como lo uso por si el error esta en otra parte

Código PHP:
class MiClase {
    
    private 
$basedatos;

    public function 
MiClase() {
        
$this->basedatos = new BaseDatos();
    }

    public function 
existeNombre($nombre) {

        
$this->basedatos->Conectar();
        
$res $this->basedatos->Consultar("SELECT nombre FROM usuarios WHERE nombre='$nombre'");
        
$existe_nombre $this->basedatos->numFilas($res);
        
$this->basedatos->Cerrar();

        if (
$existe_nombre 0) { 
            return 
true;
        }else{
            return 
false;
        }
    } 
Y en el control:

Código PHP:
$miclase = new MiClase();
$miclase->existeNombre('Pedro'); 
PD: Los requires están todos puestos, solo que no los he copiado aqui.
Gracias anticipadas por la ayuda.

Última edición por SetheR; 21/06/2010 a las 07:23