PHP - Archivo.log ????

 
Vista:

Archivo.log ????

Publicado por Manuel Rodriguez (45 intervenciones) el 19/10/2006 17:44:09
Hola a todos
como puedo hacer lo siguiente
cuando inicio mi pagina web

http.//localhost/principal.php

realizo una seria de consulta a sql y controlo varias cosa , todo eso
lo guardo en un archivo dettale.log
ej:
fwrite(conecto ok )
fwrite(abro archivo...)
fwrite(usuario registrado ok ..)

eso lo hace estupendo asi tengo un contro de lo que hizo , el problema se me da cuando

me cambio de pagina por ejemplo http://localhost/Inserta.php

cuando esto dentro de esa pagina no puedo ir guardando en mi archivo .log

tengo ke volver abrirlo , como puedo hacer para abrir solo una vez el archivo y usarlo en todo el sistema
gracias por su ayuda
a all
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

RE:Archivo.log ????

Publicado por Mike79 (669 intervenciones) el 19/10/2006 19:19:34
Pues para empezar no es recomendado tener un archivo abirto y nunca cerrarlo. Ya que si el usuario cierra abrutamente su navegador, el archivo quedaria abierto. Y un archivo no cerrado, no es garantia de que quede bien guardado.

Por otro lado no es buena idea guardar un archivo los logs, ya que si se abre varias veces la misma página web, el archivo puede corromperse. Te recomiendo uses una base de datos para eso.

Saludos!
-
Miguel Angel
Mike79
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

RE:Archivo.log ????

Publicado por Manuel Rodriguez (45 intervenciones) el 19/10/2006 19:36:43
para que quiero una bd????
para guardar el log??????????
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

RE:Archivo.log ????

Publicado por Mike79 (669 intervenciones) el 19/10/2006 22:25:19
Es lo que yo te recomiendo.
Los archivos de texto se corrompen bien bonito, cuando varios usuarios entran a la misma página web. Yo he tenido malas experiencias trabajando con archivos de texto en páginas con más de 1,000 visitas diarias.

Saludos!
-
Miguel Angel
Mike79
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

RE:Archivo.log ????

Publicado por manuel rodriguez (45 intervenciones) el 20/10/2006 17:28:09
pero a que te refieres con controlarlo por bd me peudes dar un ejemplo por favor
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

RE:Archivo.log ????

Publicado por Mike79 (669 intervenciones) el 23/10/2006 23:32:23
Ok, imaginemos lo siguiente.

Tienes una página web que cada vez que alguien entra
abres un archivo, y escribes un texto, y luego lo cierras.

Supongamos que a esa página entran 1,000 visitas por minuto (eso es algo más normal de lo que puedas imaginar). Entonces lo que sucedera, es que en algun momento 2 personas entren a la página casi exactamente al mismo momento.

Mientras la primera persona entro, el php esta abriendo el archivo, otra persona esta entrando a la pagina, la primera esta apenas escribiendo en el archivo y la otra abre el archivo. Entonces puede suceder:

1.- Que la segunda persona nunca abrio el archivo, por lo tanto no se escribio nada.
2.- A la segunda persona le marque un error.
3.- Que la segunda persona abra el archivo, y escriba en la misma posición de la primera persona, por lo tanto lo de la primera persona se perdio.
4.- Que se corrompa el archivo y quede dañado.

¿De que dependera?. Del sistema operativo, de como se abrio el archivo, de como manejes los errores, y que hagas exactamente con el archivo.

En cambio, si abres una base de datos, es mas comodo, ya que los gestores de base de datos, usan varias técnicas para evitar ese tipo de coliciones. Tu simplemente abres un enlace a tu base de datos, e insertas un registro en la base de datos. El gestor se encargara de insertarlo en la base de datos, independientemente que tenga 20, 50, 100, 1000 peticiones iguales simultaneamente.

¿Como manejas bases de datos?.
Dependiendo el gestor que uses. Es muy común usar MySQL para páginas web, aunque no precisamente lo mejor.

http://www.php.net/manual/es/ref.mysql.php

Saludos!
-
Miguel Angel
Mike79
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