Foros del Web » Programando para Internet » PHP »

Ayuda!! No me funciona el include() o require()

Estas en el tema de Ayuda!! No me funciona el include() o require() en el foro de PHP en Foros del Web. Estoy trabajando en mi pc (windows) y no entiendo porque no me deja incluir un archivo que existe... es válido en windows usar require_once("../foros/global.php") o ...
  #1 (permalink)  
Antiguo 02/08/2005, 12:05
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 13 años, 5 meses
Puntos: 4
Ayuda!! No me funciona el include() o require()

Estoy trabajando en mi pc (windows) y no entiendo porque no me deja incluir un archivo que existe...
es válido en windows usar require_once("../foros/global.php") o se deben usar barras invertidas??

por ejemplo, esto me funciono:

require_once($_SERVER['DOCUMENT_ROOT'].'/foros/global.php');

pero a su vez el archivo global.php hace un include de esta manera:

require_once('./includes/init.php');

y me tira este error:

Warning: main(./includes/init.php): failed to open stream: No such file or directory in G:\Webs\foros\global.php on line 18

Fatal error: main(): Failed opening required './includes/init.php' (include_path='.;c:\php4\pear') in G:\Webs\foros\global.php on line 18


Sin embargo, el archivo existe y esta donde debe estar!!
  #2 (permalink)  
Antiguo 02/08/2005, 12:15
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 13 años
Puntos: 34
Usa:
require_once('includes/init.php');
O bien para subir niveles:
require_once('../includes/init.php');

No uses ./ trabajando en windows.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #3 (permalink)  
Antiguo 02/08/2005, 12:17
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 13 años, 5 meses
Puntos: 4
ok pero ese script viene hecho de esa forma porq es del foro vbulletin y en el host que tengo esta en windows y me anda... incluso ahora tengo el foro instalado en mi pc y anda... como es eso??
  #4 (permalink)  
Antiguo 02/08/2005, 12:18
 
Fecha de Ingreso: noviembre-2003
Mensajes: 444
Antigüedad: 14 años
Puntos: 0
seguro que esta donde debe estar???

recuerda que global.php no reaccionará en su directorio sino en el directorio del script que lo esta incluyendo...

Ej. si Script(o tu primer archivo, no dices como se llama) llama a global y global a init y segun la ruta que le estas poniendo... init se estara llamando desde el directorio de script y no de global...

puedes probar colocando el script (init.php) en el directorio de script...

espero haber ayudado o al menos haber confundido mas...

salu2
  #5 (permalink)  
Antiguo 02/08/2005, 12:26
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 13 años, 5 meses
Puntos: 4
yo tengo este archivo:
G:\Webs\foros\nydus_loginfo.php

dentro de este archivo incluye a G:\Webs\foros\global.php de esta forma:
require_once($_SERVER['DOCUMENT_ROOT'].'/foros/global.php');

y a su vez el global.php incluye a G:\Webs\foros\includes\init.php de esta forma: require_once('./includes/init.php');
  #6 (permalink)  
Antiguo 02/08/2005, 12:28
 
Fecha de Ingreso: noviembre-2003
Mensajes: 444
Antigüedad: 14 años
Puntos: 0
ya probaste el init dentro del directorio de nydus_loginfo.php

para saber si de ahi si lo incluye correctamente??

mas bien dentro del directorio de includes/init.php pero que parta del dir

de nydus.. ej nydusdir/nydus_loginfo.php
nydusdir/includes/init.php

o algo asi...

mi teoria es, como ya explique antes, que te lo esta pidiendo con respecto al directorio base del nydus y no del global...

salu2
  #7 (permalink)  
Antiguo 02/08/2005, 12:32
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 13 años, 5 meses
Puntos: 4
no anda.. ademas no puedo modificar todo lo que este en el directorio /foros porque es del foro y si toco algo no funciona...


ahhhhhhh si ya se cual es el problema, a su vez el archivo nydus_loginfo.php se esta incluyendo en otro archivo que no esta en ese directorio, pero no logro entender como puedo hacerlo!!!!!
  #8 (permalink)  
Antiguo 02/08/2005, 12:40
 
Fecha de Ingreso: noviembre-2003
Mensajes: 444
Antigüedad: 14 años
Puntos: 0
o sea como??

nydus_loginfo no lo puedes modificar??

por lo que veo, todo lo tienes en un subdir llamado foros porque no solo haces:

nydus_loginfo.php -> require_once global.php (sin dirs ni referencias puesto que esta en el mismo dir) y despues require_once (includes/init.php)

y te quitas de broncas ah??

no se puede??

salu2
  #9 (permalink)  
Antiguo 02/08/2005, 12:46
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 13 años, 5 meses
Puntos: 4
caro, pero nydus_loginfo.php es incluido por index.php que esta en g:\Webs, por lo tanto todo es relativo a ese directorio y tendria que modificar todos los includes del foro y hacerlos relativos al directorio raiz, es un laburo de negros porque son como 20 archivos enlazados entre si -_-
  #10 (permalink)  
Antiguo 02/08/2005, 12:55
 
Fecha de Ingreso: noviembre-2003
Mensajes: 444
Antigüedad: 14 años
Puntos: 0
pues te recomendaria que hicieras relativo eso... porque sino siempre que quieras incluir otro archivo asi tendrás problemas...

será que a mi no me gustan los problemas, pero aunque me costara mas erradicaria eso de una vez y por todas...

salu2
  #11 (permalink)  
Antiguo 02/08/2005, 13:43
Avatar de SiR.CARAJ0DIDA  
Fecha de Ingreso: junio-2004
Ubicación: Acá
Mensajes: 1.166
Antigüedad: 13 años, 5 meses
Puntos: 4
la otra que me queda es copiar los includes del foro al directorio principal, voy a probar
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 10:53.