Foros del Web » Programando para Internet » PHP »

Problema con los includes

Estas en el tema de Problema con los includes en el foro de PHP en Foros del Web. Bueno .... la verdad es que creo que esta es mi primer post, y como ya debe ser costumbre ... es por un problema. La ...
  #1 (permalink)  
Antiguo 28/01/2009, 13:26
 
Fecha de Ingreso: enero-2009
Mensajes: 1
Antigüedad: 15 años, 3 meses
Puntos: 0
Problema con los includes

Bueno .... la verdad es que creo que esta es mi primer post, y como ya debe ser costumbre ... es por un problema.

La cosa es que estoy haciendo una pagina .... en donde tengo el index.php en le localhost ... el index esta únicamente compuesto por 5 includes ....
* uno para el panel izq
* uno para el panel de logueo
* uno para el panel de publicidad
* uno como panel principal
* uno con el footer

mi problema es el siguiente ... resulta que el panel principal, esta compuesto por una función que se encuentra en otra carpeta ( a todo esto el index esta en la carpeta www y cada uno de los paneles esta en la ruta www/php/source/ ) que tiene la ruta www/php/functions/ el caso es que en el panel principal para llamar a la función de la carpeta functions ( es arto rebuscado ... pero se ve mas ordenado ) hace simplemente un <?php require_once("../functions/archivo.php"); ?> .... lo cual supuestamente debería bastar y sobrar ... pero no funciona ... me arroja el error:

Warning: main(../functions/archivo.php): failed to open stream: No such file or directory in c:\appserv\www\php\source\PcenMain.php on line 17
Fatal eror: main(): Failed opening required '../functions/archivo.php' (include_path='.;c:\php4\pear') in c:\appserv\www\php\source\PcenMain.php on line 17

.... si vemos bien el error bastaría con tomar "c:\appserv\www\php\source\PcenMain.php" y concatenarlo con "../functions/archivo.php" lo cual haría que se saliera de la carpeta source y entrara a la carpeta functions ( ojo que functions y source estan las 2 en la carpeta php ) y luego a "archivo.php" .... mas aún ... si por el navegado ingreso a "http://localhost/php/source/PcenMain.php" ... archivo.php funciona sin problemas y hace lo que debería hacer ....

Cabe destacar que si pongo la ruta completa donde se encuentra el archivo ... algo como c:\appserv\www\php\functions\archivo.php en el require del PcenMain.php funciona sin problemas ... pero eso de poner la ruta completa no me da mucha confianza ....

Bueno ... mi problema es ese .... hay alguien que me de algún consejo para solucionarlo ( manteniendo el orden que tenia de guardar las cosas en carpetas separadas .... ) ... de cualquier manera hace un tiempo había leído que uno se tramaba con problemas si empezaba a hacer includes dentro de includes a carpetas distintas ... pero en ese momento no le preste mucha atención xxD ...

Esperando su ayuda les saluda atentamente.
  #2 (permalink)  
Antiguo 28/01/2009, 13:48
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema con los includes

ese es el problema...

Código:
c:\appserv\www\php\functions\foo.php
c:\appserv\www\php\source\PcenMain.php
Código PHP:
include '../functions/foo.php'// esta mal

include '../../functions/foo.php'// OK :P 
en el primer ejemplo, esta mal la ruta... ya que ../ solo permite subir un nivel a la ves...

cuando, realmente necesitas subir dos niveles... primero a source/ y una ves mas hasta php/

listo!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:23.