Foros del Web » Programando para Internet » PHP »

No graba en archivo

Estas en el tema de No graba en archivo en el foro de PHP en Foros del Web. Hola a tod@s. Estoy teniendo un problema extraño que no se como puedo resolverlo. La cosa es que estoy intentando guardar en un archivo de ...
  #1 (permalink)  
Antiguo 16/04/2012, 01:28
 
Fecha de Ingreso: febrero-2010
Mensajes: 295
Antigüedad: 14 años, 9 meses
Puntos: 58
No graba en archivo

Hola a tod@s.
Estoy teniendo un problema extraño que no se como puedo resolverlo.
La cosa es que estoy intentando guardar en un archivo de texto un campo de un formulario en el que el usuario introduce su ip. Pues resulta que unas veces lo graba y otras no. Si lo graba algunas veces significa que lo estoy haciendo bien y que el código aparentemente no tiene errores, entonces ¿¿por qué hay veces que no lo graba??.
¿Alguien sabe alguna razón por la que pueda ocurrir esto?. Pongo el código por si tuviera algún fallo.

Código PHP:
if (isset($_GET['ip'])){    
    
$ip $_GET['ip'];
    
$fp fopen("listaIP.txt""a");
    
fwrite($fp"$ip".PHP_EOL);    
    
fclose($fp);
    
header("Location: configuracion.php");                                

Gracias. Un saludo
  #2 (permalink)  
Antiguo 16/04/2012, 02:45
Avatar de oscartt67  
Fecha de Ingreso: abril-2012
Ubicación: fonollosa
Mensajes: 481
Antigüedad: 12 años, 7 meses
Puntos: 97
Respuesta: No graba en archivo

Puede ser que sea un problema de concurrencia de usuarios al abrir listaIP.txt?
  #3 (permalink)  
Antiguo 16/04/2012, 05:32
 
Fecha de Ingreso: febrero-2010
Mensajes: 295
Antigüedad: 14 años, 9 meses
Puntos: 58
Respuesta: No graba en archivo

Hola oscartt67
No puede ser eso porque la aplicación todavía está en pruebas y solo la pruebo yo.
Se me olvidó decir que el servidor corre en linux, no sé si eso tendrá algo que ver.
He estado mirando sobre la función write y he visto que devuelve un int. Voy a ir comprobando el valor que devuelve para ver si saco algo en claro.
  #4 (permalink)  
Antiguo 16/04/2012, 06:51
Avatar de oscartt67  
Fecha de Ingreso: abril-2012
Ubicación: fonollosa
Mensajes: 481
Antigüedad: 12 años, 7 meses
Puntos: 97
Respuesta: No graba en archivo

Buena idea. Ya comentaras que pasa.
  #5 (permalink)  
Antiguo 17/04/2012, 05:16
Avatar de linuxzero  
Fecha de Ingreso: noviembre-2011
Ubicación: Argentina
Mensajes: 778
Antigüedad: 13 años
Puntos: 160
Respuesta: No graba en archivo

proba utilizando la funcion file_put_contents(), te dejo la documentacion de php

http://php.net/manual/es/function.file-put-contents.php

En la misma hay ejemplos sencillos, yo trabajo sobre linux siempre y no tuve problemas para graban en un archivo con esta funcion.

Fijate de ultima los permisos que tenga el archivo, porque acordate que escribis con www-data en linux, entonces fijate si el dueño de archivo es www-data para poder escribirlo o bien dale los permisos necesarios para la escritura en caso de que el archivo sea de otro dueño.
__________________
Si todo fuera tan sencillo como un symfony cc la vida seria más fácil.
http://phpnico.wordpress.com

Etiquetas: formulario, graba, usuarios
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 22:39.