Foros del Web » Programando para Internet » PHP »

problema con namespace y autoload

Estas en el tema de problema con namespace y autoload en el foro de PHP en Foros del Web. hola a todos tengo un problema al cargar mis clases en mi hosting en mi PC local me carga normalmente pero cuando lo subo al ...
  #1 (permalink)  
Antiguo 15/08/2011, 09:25
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 15 años, 9 meses
Puntos: 220
problema con namespace y autoload

hola a todos
tengo un problema al cargar mis clases en mi hosting en mi PC local me carga normalmente pero cuando lo subo al servidor me da un error que dice

Fatal error: Class 'application\libraries\session' not found in /home/arellano/public_html/estilos/index.php on line 4

esta es mi archivo php que cargo

Código PHP:
Ver original
  1. require_once $_SERVER['DOCUMENT_ROOT'] . '/estilos/application/config/config.php';
  2. require_once $_SERVER['DOCUMENT_ROOT'] . '/estilos/application/libraries/autoload.php';
  3. require_once $_SERVER['DOCUMENT_ROOT'] . '/estilos/application/libraries/parametertype.php';
  4. require_once $_SERVER['DOCUMENT_ROOT'] . '/estilos/application/libraries/stmt.php';
  5. require_once $_SERVER['DOCUMENT_ROOT'] . '/estilos/application/libraries/db.php';
  6. define('APP_PATH', str_replace('/', '\\', $_SERVER['DOCUMENT_ROOT']) . '\\estilos\\');
  7. $s = new application\libraries\session();

y mi funcion autoload

Código PHP:
Ver original
  1. function __autoload($classname) {
  2.     $classname = ltrim($classname, '\\');
  3.     if (file_exists(APP_PATH.$classname . '.php')) {
  4.         require_once APP_PATH.strtolower($classname).'.php';
  5.     }
  6. }

mi clase session esta en el directorio

application/libraries

y su codigo es algo solo como esto

Código PHP:
Ver original
  1. namespace application\libraries;
  2.  
  3. class session {
  4. ....
  5. }

no se porque en mi hosting no carga
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #2 (permalink)  
Antiguo 15/08/2011, 09:53
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
Respuesta: problema con namespace y autoload

¿Que versión de PHP tienes en tu local y en el servidor?
  #3 (permalink)  
Antiguo 15/08/2011, 10:00
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 15 años, 9 meses
Puntos: 220
Respuesta: problema con namespace y autoload

las dos versiones son de php 5.3

ya lo solucione el error parece

que cuando trabajos con proyectos web en windows los directorios o archivos deben separarse por \

en cambio en linux que viene siendo mi hosting los directorios se separan con /
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #4 (permalink)  
Antiguo 15/08/2011, 10:22
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
Respuesta: problema con namespace y autoload

Aparte de eso checa el caSe, en Windows es lo mismo Archivo.php que archivo.php, en *nix son diferentes archivos.

Saludos.
  #5 (permalink)  
Antiguo 15/08/2011, 10:25
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 2 meses
Puntos: 845
Respuesta: problema con namespace y autoload

Deberías utilizar la constante DIRECTORY_SEPARATOR para evitar este tipo de problemas

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)

Etiquetas: html, namespace
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 17:43.