Foros del Web » Programando para Internet » PHP »

Sobre include()

Estas en el tema de Sobre include() en el foro de PHP en Foros del Web. ¿Puede crearme algún problema el realizar includes por url completa en vez de relativa, es decir, en vez de poner: Código PHP: include ( "archivo.php" )  ...
  #1 (permalink)  
Antiguo 03/03/2003, 14:09
V_G
Invitado
 
Mensajes: n/a
Puntos:
Sobre include()

¿Puede crearme algún problema el realizar includes por url completa en vez de relativa, es decir, en vez de poner:
Código PHP:
include ("archivo.php"
poner lo siguiente:
Código PHP:
include ("http://www.dominio.com/archivo.php"
Pregunto esto, porque tengo un archivo config que he de llamar desde varias páginas y me es más facil utilizar el segundo método, pero antes de usarlo me gustaria conocer los inconvenientes que posee, si es que posee alguno
Gracias por su ayuda
  #2 (permalink)  
Antiguo 03/03/2003, 14:20
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

El segundo metodo es erroneo (creo) para hacer lo que tu quieres. Al pasar una URL creo que lo que haces es incluir el HTML generado por la llamada a esa pagina, es decir, lo que te muestra el navegador si pones esa URL.

En el include(), lo que se puede pasar es el path relativo o el absoluto. Es la ruta al fichero, por ejemplo, "c:/www/ppweb/includes/archivo.php" si trabajas en windows.

El unico inconveniente de trabajar con paths absolutos, es que si cambia en algun momento la distribucion de directorios por encima del directorio raiz del web, tienes que cambiar esos paths. Por ejemplo, si tu directorio raiz del sitio pasa a ser "c:/w3/ppweb/". Esto se puede evitar usando $_SERVER['DOCUMENT_ROOT'] como parte inicial del path:
Código PHP:
include ($_SERVER['DOCUMENT_ROOT']."/directorio/archivo.php"); 
Esta constante contiene el path absoluto al directorio raiz de la web.

Espero haber sido de ayuda.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 03/03/2003, 14:28
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Primero tendras q ver si tu servidor te deja acceder a archivos remotos usando direcciones tipo "URL" ..

Eso lo determina la directiva de PHP sobre:
allow_url_fopen
(en safe-mode está desactivada .. por ejemplo)

Lo ideal si están esos archivos q vas llamar en tu mismo servidor .. usa direcciones Absolutas en relación al sistema de archivos del servidor ..

Algo tipo:
include("/var/nosedonde/tusitio/htlm/includestuyos/cosa.php");

(eso sería para linux .. en windows c:\tal\tal\pascual\cosa.php ...)

Desventajas tendrá (supongo ) que al hacer un include por un "wrapper" (HTTP, FTP .. etc) se ha de conectar al servicio q se use con el tiempo consiguiente y luego hacer la operación correspondiente .. Si accedes directo a una ruta absoluta se supone q tardaría menos tiempo.


Un saludo,
  #4 (permalink)  
Antiguo 03/03/2003, 14:33
V_G
Invitado
 
Mensajes: n/a
Puntos:
Ok, muchas gracias por sus respuestas.
Voy a probar el método que cita Josemi.
Espero que me sirva
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 20:10.