Foros del Web » Programando para Internet » PHP »

Duda con inclide() o require()

Estas en el tema de Duda con inclide() o require() en el foro de PHP en Foros del Web. Mi problema con los includes surgió cuando tuve la necesidad de colocar un include() dentro de un archivo que iba a llamar con un include ...
  #1 (permalink)  
Antiguo 31/05/2007, 12:04
 
Fecha de Ingreso: enero-2006
Ubicación: Maracay, Edo. Aragua
Mensajes: 206
Antigüedad: 18 años, 3 meses
Puntos: 0
Pregunta Duda con inclide() o require()

Mi problema con los includes surgió cuando tuve la necesidad de colocar un include() dentro de un archivo que iba a llamar con un include desde otro archivo (creo que ni yo entiendo lo que escribí, es un poco confuso). Es algo asi: voy a incluir un archivo, que a su vez, va a incluir otro más.

Quiero saber si será correcto colocar:

Código PHP:
include($_SERVER[DOCUMENT_ROOT].'/class/db.php'); 
en lugar de:

Código PHP:
include('../../class/db.php'); 
Espero que alguien entienda mi duda y pueda ayudarme. Saludos

Espero que alguien que ha
  #2 (permalink)  
Antiguo 31/05/2007, 12:20
Avatar de andres013  
Fecha de Ingreso: febrero-2007
Ubicación: Bogotá Colombia
Mensajes: 222
Antigüedad: 17 años, 1 mes
Puntos: 2
Re: Duda con inclide() o require()

a ver, la sentencia include() y/o require() incluye y evalúa el archivo especificado. es decir, son identicos, la unica diferencia es en la forma en que actuan ante un error. siendo así: include() produce un Warning mientras que require() produce un Error Fatal.

ahora si la pregunta es si "../../" o "$_SERVER[DOCUMENT_ROOT]" es el adecuado, depende de en que directorio esta el archivo que utilizará el archivo que se esta ejecutando.

Un saludo ;)
__________________
Desarrollando Web: La guía para los desarrolladores web
http://www.desarrollandoweb.com
  #3 (permalink)  
Antiguo 31/05/2007, 12:41
 
Fecha de Ingreso: enero-2006
Ubicación: Maracay, Edo. Aragua
Mensajes: 206
Antigüedad: 18 años, 3 meses
Puntos: 0
Re: Duda con inclide() o require()

Cita:
Iniciado por andres013 Ver Mensaje
ahora si la pregunta es si "../../" o "$_SERVER[DOCUMENT_ROOT]" es el adecuado, depende de en que directorio esta el archivo que utilizará el archivo que se esta ejecutando.
Pero es válido colocar el $_SERVER[DOCUMENT_ROOT] dentro de un include? es correcto hacerlo? o podría traer problemas dependiendo de mi servidor?

Es decir, en mi servidor local me funciona, pero no quiero que cuando lo coloque en Internet me vaya a dar problemas.

Saludos.
  #4 (permalink)  
Antiguo 31/05/2007, 12:45
 
Fecha de Ingreso: enero-2006
Ubicación: Maracay, Edo. Aragua
Mensajes: 206
Antigüedad: 18 años, 3 meses
Puntos: 0
Re: Duda con inclide() o require()

Yo prefiero usar
Código PHP:
include($_SERVER[DOCUMENT_ROOT].'/class/db.php'); 
porque es una dirección absoluta, es decir, no importa donde la coloque siempre va a ser igual, siempre va a ser la misma linea, en cambio si me voy por el tipico:

Código PHP:
include('../../../class/db.php'); 
voy a teer que estar cambiando con cada página dependiendo del directorio donde me encuentre.

Por eso quier saber si es correcto utilizar $_SERVER[DOCUMENT_ROOT]

Saludos.
  #5 (permalink)  
Antiguo 31/05/2007, 12:59
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Re: Duda con inclide() o require()

Concuerdo es mejor utilizar:
Código PHP:
include($_SERVER['DOCUMENT_ROOT'].'/class/db.php'); 
Ya que es el path absoluto y es mas sencillo de ubicar a la hora de incluir tus archivos.
  #6 (permalink)  
Antiguo 31/05/2007, 13:23
 
Fecha de Ingreso: enero-2006
Ubicación: Maracay, Edo. Aragua
Mensajes: 206
Antigüedad: 18 años, 3 meses
Puntos: 0
Re: Duda con inclide() o require()

Perfecto; me imagino que es una forma correcta de hacerlo, porque en el siguiente enlace, hacen algo similar:

http://phpsenior.blogspot.com/2006/0...lemas-con.html

Muchas gracias por la ayuda!
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 15:09.