Foros del Web » Programando para Internet » PHP »

fallo con los include

Estas en el tema de fallo con los include en el foro de PHP en Foros del Web. buenas noches, no se si a alguien le habra pasado esto, pero me ha dejado sorprendido. me disponia a crear una nueva hoja del sitio, ...
  #1 (permalink)  
Antiguo 25/04/2011, 16:37
Avatar de floog  
Fecha de Ingreso: enero-2006
Mensajes: 191
Antigüedad: 18 años, 3 meses
Puntos: 2
fallo con los include

buenas noches,
no se si a alguien le habra pasado esto, pero me ha dejado sorprendido. me disponia a crear una nueva hoja del sitio, en una carpeta distinta a la raiz, llamada vn un fichero index.php. todo ok como pueden ver
Código PHP:
<? //pagina de inicio del sistema
   //primero verificamos que el usuario no haya iniciado una session
   //en caso afirmativo nos dirigira a la pantalla de inicio
   
session_start ();
   if (isset(
$_SESSION["autentificado"])){
       
       
/// pagina index para los vehiculos nuevos?>
<html>
   <head>
   <link href="../scripts/css-core.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
        <? include ('../pg-header.php');
             include (
'../pg-side.php') ; ?>
    </body>
</html>
 <? //en caso de que no hubisemos iniciado session
       //tenemos que dirigir al usuario donde pueda hacerlo
      //esto es la pagina de login
    
else {
        
header ("Location:/raiz/login.php");
    }
?>
la cuestion es que me incluye el fichero que gestiona y controla la barra lateral pero no el header...en cambio si copio los dos ficheros pg-header y pg-side a la carpeta vn donde tengo este fichero si que se muestran. alguien sabria darme una explicacion de esto??? la verdad es que una de las muchas ventajas del include es eso, poder incluir los ficheros y gestionar la pagin como si de modulos se tratase...
  #2 (permalink)  
Antiguo 25/04/2011, 16:42
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 13 años, 6 meses
Puntos: 511
Respuesta: fallo con los include

La carpeta en la cual pretendes o creaste la hoja de estilos se encuentra en una sub carpeta dentro de la raiz? o fuera de la carpeta raiz de sitio?

Tambien debes tomar en cuenta que si mueves de carpera los directorios debes de cambiar la ruta en la funcion include, ya que si no haces lo que te comento la pagina no va a poder acceder a los parametros o funciones que deseas llamar
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #3 (permalink)  
Antiguo 25/04/2011, 17:13
Avatar de floog  
Fecha de Ingreso: enero-2006
Mensajes: 191
Antigüedad: 18 años, 3 meses
Puntos: 2
Respuesta: fallo con los include

las hojas de estilos se enceuntran en una subcarpeta del directorio raiz llamada scripts, pero si que se enlazan pues muestra el div content con el formato adecuado. por lo demas sigue sin funcionar
  #4 (permalink)  
Antiguo 25/04/2011, 17:26
Avatar de floog  
Fecha de Ingreso: enero-2006
Mensajes: 191
Antigüedad: 18 años, 3 meses
Puntos: 2
Respuesta: fallo con los include

al final he optado por una solucion rapida que consiste en volver a tener los ficheros header y side dentro de cada una de las subcarpetas, lo cual me parece ilogico...si alguien sabe como resolver este entuerto, se agradece cualquier consejo
  #5 (permalink)  
Antiguo 25/04/2011, 17:48
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: fallo con los include

no entendi bien pero creo saber lo que pasa..

tenemos por ejemplo tu raiz del sitio

con un
index.php
style.css
header.php
contacto.php
imagenes/ <-----FOLDER
js/<----------FOLDER
CARPETANUEVA/


en donde en tu index.php haces un include a header.php que a su vez tiene la hoja de estilos style.css en ella cuando la llamas todo ok, te trabaja los estilos correctamente, ya que style.css por ejemplo va a buscar las imagenes a la ruta imagenes/ y los js etc....
ahora si incluyes en contacto.php pasa lo mismo todo ok....

pero tu me dices que te creaste otra carpeta CARPETANUEVA
y dentro de ella un archivo nosotros.php por decir algo y agregas el header.php y no te trae las cosas.

problema 1.- un include incluye completamente una pagina web dentro de otra esto quiere decir integramente las rutas establecidas de imagenes, scripts y conexiones etc...

problema 2.- al incluir tu header.php en la primera pagina te trae del css una imagen de imagenes/tuimagen.jpg

ya cuando incluyes tu header en paginanueva.php dentro de CARPETA NUEVA lo que hace el include es incluir calcadamente header.php sin modificar las rutas el no puede adivinar que lo estas llamando de carpetas mas adentro o fuera por lo que esta buscando tuimagen.jpg dentro de la carpeta CARPETANUEVA/imagenes/ y claramente no existe esa ruta.

espero te haya quedado claro cualquier duda nos la comentas, y mirate algo sobre rutas absolutas y rutas relativas, lo mismo include();

saludos
__________________
Gokuh Salvo al mundo. PUNTO!!!!

Etiquetas: fallo, include
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:18.