Ver Mensaje Individual
  #2 (permalink)  
Antiguo 30/04/2006, 18:04
califa010
 
Fecha de Ingreso: enero-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 299
Antigüedad: 18 años, 4 meses
Puntos: 5
Buenas.

No conozco en profundidad sobre programación orientada a objetos, pero hay algo que me parece raro en el código que mostrás. Si la clase libro_visitas extiende a consulta, quiere decir que hereda todas sus propiedades y métodos. Por tanto, no entiendo la razón por la cual estás creando una instancia de consulta al llamar al método get_lvisitas() del objeto $visitas.

Si ejecutar es un método de la clase consulta, también lo es de la clase que herede de consulta, en este caso, libro_visitas.

En lugar de crear la instancia, directamente podrías hacer $this->ejecutar().

Por otro lado, tal vez no sea necesario tener un campo query_visitas, que podría ser una variable local del método get_lvisitas() (a menos que tengas otra razón para hacerlo así, habría que ver qué estás buscando; lo mismo, sobre $this->row_visitas y $this->a).

Otra cuestión, me parece, es que es mejor (más prolijo y flexible) separar la obtención de los datos de la presentación de los mismos. En lugar de que get_lvisitas() hiciera un echo, podría usar return para devolver el resultado de la consulta (como "resource" o ya parseado como un array) y otro método sería el encargado de darle formato a la salida.

De esta manera, un método se encargaría de darle formato a la presentación y get_lvisitas() simplemente de hacer la consulta y devolver un resultado. Si cambiás sólo la presentación, get_lvisitas() no se vería afectado (y no debería, porque no estaría cambiando la "lógica" sino sólo el aspecto gráfico).

Bueno, son sólo un par de ideas, esperemos la opinión de los expertos.

Suerte
Califa