Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: soru13 en 14 Diciembre 2012, 20:35 pm



Título: instanciar una clase externa con php
Publicado por: soru13 en 14 Diciembre 2012, 20:35 pm
hola, estoy empezando con php orientado a objetos y me ha surgido una duda que no consigo resolver, tengo el siguiente archivo:

<?php
include("config.php");
//instanciamos la clase config.php
$sql = new conectarMySQL("localhost","root","root","cocina");

class usuario{
//variables
var $nombre;
var $pass;

//constructor
function usuario($user,$pass){
$this->nombre = $user;
$this->pass = $pass;
}

//metodos
function comprobar(){
$sql->conectar();
}
}

//ejecutamos la clase
$usuario = new usuario("pepe","123");
$usuario->comprobar();
?>

el caso es que al ejecutar el método comprobar(), me da el siguiente error:

Código:
Fatal error: Call to a member function conectar() on a non-object in C:\AppServ\www\cocina\usuario.php on line 19

la linea 19 es

Código:
$sql->conectar();

me temo que es porque no he instanciado la clase "conectarMySQL" correctamente, pero no consigo instanciarla de ninguna otra forma sin que me dé error.

Gracias y un saludo.


Título: Re: instanciar una clase externa con php
Publicado por: landerzx en 15 Diciembre 2012, 17:59 pm
hola amigo no has tratado de instanciar esa clase que contiene la funcion comprobar....o puedes heredarla a la clase usuario asi.......... class usuario extends conectarMysql.....y cuando ya la hayas heredado trata de llamarla desde usuario...avisa si te salio