PHP - Duda existencial con fopen y niveles inferiores del directorio

 
Vista:
sin imagen de perfil

Duda existencial con fopen y niveles inferiores del directorio

Publicado por NepT1 (31 intervenciones) el 21/07/2014 10:29:14
Supongamos que quiero acceder a una imagen que esta en el directorio principal, podria poner

1
<img src='../../../imagen.jpg'>

pero hay un metodo mas sencillo que es con

1
<img src='..\imagen.jpg'>

pues bien, si quiero hacer el mismo uso con el fopen para abrir un fichero, este me da error

1
2
3
4
5
6
7
Este funciona:
 
$Fichero = fopen("../archivo.txt","r");
 
Este da error:
 
$Fichero = fopen("..\archivo.txt","r");

No puedo dejarlo con el simple ../ ya que la pagina que tiene el enlace es un "require" y va variando de nivel de directorio, por eso necesito que apunte directamente al inicio, este donde este.

Alguien me podría aconsejar? Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Duda existencial con fopen y niveles inferiores del directorio

Publicado por xve (6935 intervenciones) el 21/07/2014 15:30:35
Hola, yo te diría que nunca utilices la barra invertida, ya que creo que unicamente la utiliza windows... los servidores linux, no la utilizan.

Si quieres cargar una imagen que esta en la raiz, simplemente poniendo la barra de dividir es suficiente.
1
<img src='/imagen.jpg'>
Estés en la carpeta que estés, siempre ira a buscar la imagen a la raíz de la web.

Espero que con esto soluciones tu problema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Duda existencial con fopen y niveles inferiores del directorio

Publicado por Cristian (31 intervenciones) el 21/07/2014 18:51:19
Gracias por tu respuesta, pero también me da error, tiene que ser cosa del fopen que solo acepta ciertos accesos

1
2
Warning: fopen(/carpeta/archivo.txt) [function.fopen]: failed to open stream:
No such file or directory in /home/123456/public_html/dominio.com/pagina.php on line 58
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Duda existencial con fopen y niveles inferiores del directorio

Publicado por xve (6935 intervenciones) el 21/07/2014 19:41:09
Hola Cristian, el problema es que no te encuentra el archivo...

En que carpeta esta el archivo archivo.txt?
Exactamente que tienes puesto en la instrucción fopen()?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Duda existencial con fopen y niveles inferiores del directorio

Publicado por NepT1 (31 intervenciones) el 21/07/2014 19:41:57
Bueno, me respondo a mi mismo con la solución al problema, después de intentarlo de varias maneras, encontre la forma de hacerlo y es la siguiente:

1
$Fichero = fopen($_SERVER['DOCUMENT_ROOT'].'/carpeta/documento.txt','r');

Espero que a alguien mas le sirva de ayuda.

P.D. Dejo el enlace de mi web pro si alguien tiene la curiosidad de visitarla :)

[url]www.nept1.com[/url]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Duda existencial con fopen y niveles inferiores del directorio

Publicado por xve (6935 intervenciones) el 21/07/2014 20:42:54
Es verdad, tienes toda la razón... al ejecutarse en el PHP, tienes que poner la ruta absoluta, cuando se carga una imagen en el navegador, tienes que trabajar con la ruta desde la web.

Gracias por compartirlo!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar