Foros del Web » Programando para Internet » PHP »

Duda funcionamiento include() en linux

Estas en el tema de Duda funcionamiento include() en linux en el foro de PHP en Foros del Web. Buenas noches gente, tengo una duda que por mas que busque en manuales y manuales no pude resolver, tengo el siguiente arbol de archivos Carpeta ...
  #1 (permalink)  
Antiguo 05/04/2012, 20:55
Avatar de Agusx1211  
Fecha de Ingreso: octubre-2009
Ubicación: Buenos Aires
Mensajes: 33
Antigüedad: 14 años, 5 meses
Puntos: 2
Duda funcionamiento include() en linux

Buenas noches gente, tengo una duda que por mas que busque en manuales y manuales no pude resolver, tengo el siguiente arbol de archivos

Carpeta 1
Carpeta 2
archivo1.php
Carpeta 3
Carpeta 4
archivo2.php

(Por si no queda claro Carpeta 2 y Carpeta 3 estan dentro de Carpeta 1, Carpeta 4 esta dentro de Carpeta 3, archivo1.php dentro de Carpeta2 y archivo2 dentro de Carpeta 4)

El problema es que estoy en archivo2.php y quiero hacer include al archivo1.php
pero cuando pongo:

Código PHP:
include("../biblioteca/login.php"); 
me dice que el archivo no existe
como tendria que ser el include, porque se que para cada SO es diferente
  #2 (permalink)  
Antiguo 06/04/2012, 05:27
Avatar de ahaugas  
Fecha de Ingreso: agosto-2011
Ubicación: Madrid
Mensajes: 249
Antigüedad: 12 años, 7 meses
Puntos: 21
Respuesta: Duda funcionamiento include() en linux

no, para cada so no es diferente, es en la forma de configurarlo, pero el problema de los include es la distancia entre las carpetas.

yo personalmente recomiendo crear un archivo base tipo config.php
y desde ahi partir las rutas y cuando lo necesites lo llamas con require_once().

te digo porque hace tiempo tuve el mismo problema y me comia la cabeza y sabia que estaba bien, pero pasa que no lo llama correctamente.

suerte
  #3 (permalink)  
Antiguo 06/04/2012, 07:39
Avatar de Agusx1211  
Fecha de Ingreso: octubre-2009
Ubicación: Buenos Aires
Mensajes: 33
Antigüedad: 14 años, 5 meses
Puntos: 2
Respuesta: Duda funcionamiento include() en linux

Te entendi a medias, a que te referis con el archivo config.php en el directorio base?

El archivo1.php no lo puedo mover de la carpeta, no lo puedo pasar al directorio base, tiene que quedar en el que esta :/
  #4 (permalink)  
Antiguo 06/04/2012, 08:23
Avatar de ahaugas  
Fecha de Ingreso: agosto-2011
Ubicación: Madrid
Mensajes: 249
Antigüedad: 12 años, 7 meses
Puntos: 21
Respuesta: Duda funcionamiento include() en linux

para manejar archivos entre directorios superiores y inferiores necesitas un archivo base para manejar tu script mediante un include.

mira los ejemplos
http://php.net/manual/es/function.include.php
  #5 (permalink)  
Antiguo 06/04/2012, 08:37
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Duda funcionamiento include() en linux

Tienes varias formas como hacerlo...

Código PHP:
Ver original
  1. //regresando en el árbol de archivos
  2. include('../../carpeta2/login.php');
  3.  
  4. //comenzando desde raiz....
  5. $url = $_SERVER['DOCUMENT_ROOT'].'/carpeta1/carpeta2/login.php';
  6. include($url);

La ultima forma es la mas facil si no entiendes como funciona el sistema de archivos y como referenciar a archivos en niveles superiores...

Cita:
como tendria que ser el include, porque se que para cada SO es diferente
Tanto require, como include (y sus "primos" _once) funcionan igual en cualquier SO, lo que si cambia es el sistema de archivos, el windows no importa si tiene mayúsculas o no el nombre, siempre lo tomara como el mismo archivo:

Tanto miarchivo.php como MiArchivo.php o Miarchivo.php es el mismo archivo

En GNU/Linux y Unix pueden llamarse igual varios archivos PERO con algún caracter en mayúsculas o minúsculas:

miarchivo.php es diferente de MiArchivo.php que a su vez es diferente de Miarchivo.php, en este caso, los tres archivos son diferentes!, así que cuidado con los nombres tanto de archivos como carpetas, en GNU/Linux y sistemas Unix respeta los nombres las mayúsculas y minúsculas
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #6 (permalink)  
Antiguo 06/04/2012, 08:48
Avatar de ahaugas  
Fecha de Ingreso: agosto-2011
Ubicación: Madrid
Mensajes: 249
Antigüedad: 12 años, 7 meses
Puntos: 21
Respuesta: Duda funcionamiento include() en linux

Nemutagk gracias por la aclaracion

Cita:
Tanto require, como include (y sus "primos" _once) funcionan igual en cualquier SO, lo que si cambia es el sistema de archivos, el windows no importa si tiene mayúsculas o no el nombre, siempre lo tomara como el mismo archivo:
Agusx1211 como dije antes esto depende de la configuracion, yo recomiendo hacer archivos base y asi nunca tendras problemas de compatibilidad

espero haber ayudado
suerte
  #7 (permalink)  
Antiguo 06/04/2012, 09:00
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Duda funcionamiento include() en linux

No, entendiste mal, no es cuestión de configuración o compatibilidad, es por el propio sistema de archivos que usa el sistema operativo, por lo tanto NO es configurable, si o si tienes que respetar las reglas en los sistemas de archivos (a sistemas de archivos me refiero a NTFS, FAT 16/32, EXT2/3/4, etc), por otro lado, TAMPOCO es problemas de compatibilidad, si respetas los nombres de archivos (sus mayúsculas y minúsculas, evitar espacios o caracteres raros) funcionará bien en cualquier SO, sin importar el sistema de archivos que se use
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #8 (permalink)  
Antiguo 06/04/2012, 09:11
Avatar de ahaugas  
Fecha de Ingreso: agosto-2011
Ubicación: Madrid
Mensajes: 249
Antigüedad: 12 años, 7 meses
Puntos: 21
Respuesta: Duda funcionamiento include() en linux

creo que me entendiste mal o me he explicado a medias pero es lo que queria decir mas o menos, depende de como tienes configurado el equipo ya se como funcionan los sistemas de archivos, yo utilizo linux y en el trabajo utilizo windows, la escritura y la lectura son diferentes por ejemplo windows no soporta las direcciones ./

pero gracias por aclararlo
  #9 (permalink)  
Antiguo 06/04/2012, 12:03
Avatar de Agusx1211  
Fecha de Ingreso: octubre-2009
Ubicación: Buenos Aires
Mensajes: 33
Antigüedad: 14 años, 5 meses
Puntos: 2
Respuesta: Duda funcionamiento include() en linux

Nemutagk karmita :D gracias me solucionaste el problema y las dudas

Etiquetas: funcionamiento, include, linux
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:01.