• Viernes 3 de Mayo de 2024, 17:29

Autor Tema:  uso de fopen() (en hosting)  (Leído 2672 veces)

cesand

  • Miembro MUY activo
  • ***
  • Mensajes: 127
    • Ver Perfil
uso de fopen() (en hosting)
« en: Jueves 18 de Febrero de 2010, 05:52 »
0
hola gente..

me ayudaria mucho si me pueden dar una mano con essta funcion fopen() les cuento siempre tabaje mi script como localhost entonces nunca tuve problema para usar asi la funcion:

fopen($_SERVER['DOCUMENT_ROOT']."/curso/proyecto/comentarios.txt", "$modo")

pero ahora me aloje en miarroba para probar mi primer web online y se me presenta el problema ya que
no puedo abrir el archivo y creo que es por esta parte:

  $_SERVER['DOCUMENT_ROOT']

ahora tendria que cambiar calculo pero por que valor? estoy en lo sierto de mi sospecha?

gracias de antemano

DriverOp

  • Miembro MUY activo
  • ***
  • Mensajes: 201
    • Ver Perfil
Re: uso de fopen() (en hosting)
« Respuesta #1 en: Jueves 18 de Febrero de 2010, 15:25 »
0
¿Qué mensaje de error te muestra?

cesand

  • Miembro MUY activo
  • ***
  • Mensajes: 127
    • Ver Perfil
Re: uso de fopen() (en hosting)
« Respuesta #2 en: Viernes 19 de Febrero de 2010, 00:18 »
0
Gracias por la respuesta che..


trabajando en localhost usando xampp en mi pc funciona perfecto como yo quiero pero al subir la pagina php a miarroba me dejo de funcionar ese link que lo que me mostraba es justamente lo que contiene un archivito .txt que genero mediante un <form> despues lo demas como conectarse a mysql me funciona bien como si estuviera en localhost trabaja igual.. el problema esta en esta en la parte del codigo donde tiene que abrir el .txt mira este es mi trozo de codigo donde no trabaja bien, asi lo uso en localhost y va bien.. pero en miarroba no funciona


@$coment = fopen($_SERVER['DOCUMENT_ROOT']."/curso/proyecto/comentarios.txt", "$modo");
    if (!$coment)
    {
        echo "No existen comentarios para mostrar";
        exit;
    }


asi lo uso en localhost pasa ese if( ) perfectamente pero aca con la web alojada cuando abro ese seccion se corta la ejecucion del scrip en ese if  ( ) y muesta el mensaje

No existen comentarios para mostrar


por esto creo que se cae de maduro que el problema esta en la funcion fopen( )

no?

despues no la tengo alojada en ningun otro servidor a mi pagina..

que podre hacer? como se puede averiguar si miarroba no te deja usar esta funcion?


mil gracias desde ya

DriverOp

  • Miembro MUY activo
  • ***
  • Mensajes: 201
    • Ver Perfil
Re: uso de fopen() (en hosting)
« Respuesta #3 en: Viernes 19 de Febrero de 2010, 01:46 »
0
Si entiendo bien esa línea de código:

Código: PHP
  1. @$coment = fopen($_SERVER['DOCUMENT_ROOT']."/curso/proyecto/comentarios.txt", "$modo");
  2.  

la usas para saber si existe el archivo "comentarios.txt" en esa localización. Mal hecho. Deberías hacer:

Código: PHP
  1. if (is_file($_SERVER['DOCUMENT_ROOT']."/curso/proyecto/comentarios.txt")) {
  2.   /* hacer algo con el archivo */
  3. }
  4. else { echo "No existe el archivo."; }
  5.  

Por otro lado me da la leve impresión de que confías en que $_SERVER['DOCUMENT_ROOT'] contiene una ruta válida hacia ese archivo. Haz la siguiente prueba: imprime el valor de $_SERVER['DOCUMENT_ROOT'] antes de ejecutar el fopen(). Quizá el problema sea tan simple como que te sobra una / o no te vale lo que tú crees que vale.

cesand

  • Miembro MUY activo
  • ***
  • Mensajes: 127
    • Ver Perfil
Re: uso de fopen() (en hosting)
« Respuesta #4 en: Domingo 21 de Febrero de 2010, 15:40 »
0
muchas gracias driverOp

de ahora en mas voy a probar de usar como mme dijiste IS_FILE para los archivos, pero para resolver el problema rapido puseb los parametros de la funcion de esta forma

@$coment = fopen("comentarios.txt", "$modo");

y me funciono perfecto en host de mi@
muchas gracias siempre vme has dado buenas ayudas..