Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: LucasHood en 27 Agosto 2016, 12:04 pm



Título: Duda PHP con include("pagina.php")
Publicado por: LucasHood en 27 Agosto 2016, 12:04 pm
Buenas, no llevo mucho tiempo con PHP, así que igual sabéis guiarme en esto.

- Tengo tres páginas: 'vehiculo.php', 'cliente_vehiculo.php', 'test_cliente.php'.

 1. vehiculo.php tiene varias clases: Vehiculo{}, Coche extends Vehiculo {}, Moto extends Vehiculo {}, etc. Y todo funciona perfectamente.

2. cliente_vehiculo.php tiene la clase Cliente{}, en la que recibe nombre, identidad, se crea con cero vehiculos alquilados, etc... y luego función boolean de ha_alquilado_vehiculo(), alquilar vehiculo($vehiculo), devolver_vehiculo($vehiculo), etc. Y todo funciona perfectamente.

3. test_cliente.php es para hacer pruebas. Crea objetos Cliente, crea objetos Vehiculo y los alquila, devuelve, etc...

MI DUDA: En 'test_cliente.php' tengo include("vehiculo.php") e include("cliente_vehiculo.php") y funciona genial. Pero si pongo include ("vehiculo.php") en cliente_vehiculo.php también (y lo veía lógico porque las funciones de esa clase trabajan también con objetos de Vehiculo para alquilarlos, compararlos, etc.), entonces la página test_cliente.php se queda en blanco. Y si vuelvo a quitar el include("vehiculo.php") de cliente_vehiculo.php entonces vuelve a funcionar a las mil maravillas.

¿No necesita cliente_vehiculo.php incluir las clases de vehiculo.php? ¿Sólo tienen que estar en test_cliente.php? ¿Por qué?

Muchas gracias, y perdonad si no me he expresado bien o si es lioso. Si necesitáis código hacédmelo saber.
Gracias.


Título: Re: Duda PHP con include("pagina.php")
Publicado por: user-marcos en 27 Agosto 2016, 13:52 pm
Es la segunda vez que te leo que pones que te sale la página en blanco. Puedes configurar php, para que te muestre errores, es decir no se te quedará en blanco y te indicara en que línea tienes el fallo.
Este fallo supongo que estarás redundando algún include. Para comprobarlo temporalmente puedes usar include_once.


Título: Re: Duda PHP con include("pagina.php")
Publicado por: LucasHood en 27 Agosto 2016, 17:25 pm
Es la segunda vez que te leo que pones que te sale la página en blanco. Puedes configurar php, para que te muestre errores, es decir no se te quedará en blanco y te indicara en que línea tienes el fallo.
Este fallo supongo que estarás redundando algún include. Para comprobarlo temporalmente puedes usar include_once.

Sí. La primera ya lo arreglé! :/ La segunda no es que no funcione. Si pongo los include("vehiculo.php") e include("cliente_vehiculo.php") en la página test_cliente.php, funciona la perfección y no sale en blanco. Sólo sale en blanco si añado include("vehiculo.php") en la página cliente_vehiculo.php.
Y mi pregunta es: aunque cilente_vehiculo.php llame o use funciones de vehiculo, ¿no necesita incluir a vehiculo? Sin incluirlo el test funciona perfectamente.

Gracias.


Título: Re: Duda PHP con include("pagina.php")
Publicado por: Zeros1001 en 2 Septiembre 2016, 13:56 pm
Necesitas incluirlo o no dependiendo de si estás utilizando MVC o no, porque si siempre pasas por un controlador frontal y allí los incluyes, no necesitas generarlo de nuevo.

Lo mejor sería que posteases el código de los 3 scripts o al menos las líneas de include de los mismos.

Saludos!