Comunidad de diseño web y desarrollo en internet online

Clase conexion a mysql desconoce el recurso

Citar            
MensajeEscrito el 09 Sep 2009 10:52 am
Necesito ayuda con esto:

Tengo una clase conexion a mysql que al conectar correctamente, establece en la propiedad oconn el recursos de conexion, pero cuando, en alguna clase hija, hago referencia a al propiedad me dice que no es un recurso. ¿porque?

el seudocodigo resumido:

class conecta ...
public oconn;

function conecta
oconn = mysql_connect(...
}
}


clase otra extends conecta...
if conecta
$orden = "select * from ...";
$res = mysql_query($orden,$this->oconn); NO FUNCIONA ( no es un recurso)

pero....

$res = mysql_query($orden); SI FUNCIONA ! ¿?¿
}
}

Gracias por su ayuda.

Por embolao

1 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 09 Sep 2009 02:04 pm
lamentablemente no se entiende muy bien en la forma en la que lo escribes, sería mejor que escribieras el código real (así le hagas cambios en los nombres y así) para entender realmente cual es el problema.

Por Xyrer

628 de clabLevel

1 tutorial

Genero:Masculino  

Android App Development

firefox
Citar            
MensajeEscrito el 09 Sep 2009 02:52 pm
La razón de tu error es que la propiedad oconn en tu clase base no es la misma para las clases hijas. Cada una de las clases hijas hace una copia diferente para esta propiedad, que guarda valores diferentes. Si quisieras que la propiedad fuera la misma en la clase base y en todas las clases hijas, la propiedad debe ser static y ya no accederías a ella como $this->oconn sino como self:$oconn.

La razón por la que la conexión funciona cuando no le envías el recurso es porque PHP siempre utiliza el último recurso de conexión disponible si no es proporcionado, que en este caso es la conexión que hiciste anteriormente con la clase base. En realidad no es necesario proporcionar el recurso de conexión a menos que estés trabajando con varias conexiones, pero eso depende del gusto de cada quién.

Por Odin

Claber

639 de clabLevel

2 tutoriales

Genero:Masculino   Premio_Secretos

El valle de las hamacas

mozilla
Citar            
MensajeEscrito el 10 Sep 2009 10:02 am
Gracias Odin. No sabia que los objetos de php funcionaban de una forma tan extraña. ¿que sentido tiene la herencia si no se conserva una referencia de una propiedad? Bueno, soy medio nuevo en php. Gracias igual.

(no copie todo el codigo porque seria largo y aburrido.)

Por embolao

1 de clabLevel



Genero:Masculino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.