Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/03/2010, 21:33
force20
 
Fecha de Ingreso: marzo-2010
Ubicación: Rosario
Mensajes: 20
Antigüedad: 14 años, 1 mes
Puntos: 2
Problema en el manejo de includes dentro de otros includes.

Hola gente, buenas noches...
Estoy teniendo un problema con los include, les comento un poco que es lo que me pasa.

Tengo esta estructura de carpetas.

clases.
lib
templates
--template1
----images
----js
----css
----contenido
--template2
css
js


eso dentro del directorio local (var/www/test/)
en si el local es /var/www, pero he echo a test un dominio virtual para que cuando ponga test en el navegador vaya a /var/www/test/.

Ahora el problema es el siguiente:
Dentro de la carpeta /template/template1 tengo la estructura gráfica ya armada.
Esta estructura esta armada mediante php y html con css y algo de js, por ende uso muchas veces el <?php include(pagina.php) ?>.
Al crear un archivo dentro del directorio local /var/www/test/ y hacer un include a un archivo de este template no me toma los include de este ultimo, es como que hace referencia partiendo del directorio donde esta el archivo con el primer include.
Para que se entienda mejor...
Dentro de templates/template1, tengo el archivo index.php, que tiene este include:
include("images/imagen1.png"); y también hace referencia al archivo css y js que están dentro de css/style.css y js/codigo.js. En estos casos tomo como raiz la posicion del index del template. así anda bien.
ahora si dentro de otro directorio mas arriba como es el test quiero hacer un include al archivo index.php los includes de este ultimo archivo no me los toma, porque no encuentra la ruta y que la busca dentro del directorio test y no dentro del directorio /test/template/template1 como tendría que ser.

Esto lo resuelvo agregándole el directorio completo a cada include, con el /var/www/test/etc/etc/etc. Pero que pasa cuando lo subo al servidor WEB o lo pase a otro entorno ? no me va a funcionar.
y a las referencias a los archivos de js y css no me los toma con la ruta completa tampoco.
Hay alguna forma de solucionar esto ?
Espero que se aya entendido, no supe como explicarlo mejor .

Desde ya, muchas gracias y saludos.