Ver Mensaje Individual
  #9 (permalink)  
Antiguo 07/07/2012, 09:43
Avatar de SetheR
SetheR
 
Fecha de Ingreso: enero-2009
Mensajes: 265
Antigüedad: 15 años, 3 meses
Puntos: 44
Respuesta: Tengo problemas con las rutas

A ver, sí puedes acceder a tu constantes desde todo tu sitio, pero debes haberlas definido antes de usarlas. Es decir, si tu no incluiste el archivo donde defines constantes ANTES de utilizarlas, no funcionará. PHP no guarda los estados de la aplicación entre peticiones consecutivas, y guardar rutas en variables de sesión no es una buena práctica.

Usando constantes:

Lo que debes hacer es, por ejemplo, crear un un archivo config.php tal que así:

Código PHP:
Ver original
  1. <?php
  2.  define("HEADERS", "ruta/a/los/headers/");
  3.  define("OTROS", "ruta/a/otros/");
  4. ?>

Y en cada uno de tus archivos, simplemente incluir la configuración de los paths.
Código PHP:
Ver original
  1. <?php
  2. require_once($_SERVER['DOCUMENT_ROOT'] . 'config.php');
  3.  
  4. require(HEADERS . 'miheader.php');
  5.  
  6. require(OTROS. 'miarchivo.php');
  7.  
  8. //mas cosas
  9. ?>

Aunque, actualmente, la práctica más extendida es ingresar a tu aplicación por un único punto de entrada, para recoger configuraciones y ejecutar las acciones deseadas por el usuario.
Ésto último, por ejemplo, es uno de las propiedades fundamentales para una implementación del patrón MVC.

PD: Es básicamente los que te ha dicho el otro compi, pero él cometió un error en "include_once('config.php);" ya que desde las carpetas de tu sitio, las ruta cambia, de ahí el DOCUEMNT_ROOT. Sólo tienes que colocar el config.php ahí

Última edición por SetheR; 07/07/2012 a las 09:49 Razón: highlights