Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Crear Log de Registro de Activdad de Usuarios

Estas en el tema de Crear Log de Registro de Activdad de Usuarios en el foro de PHP en Foros del Web. Hola buen dia, quisiera ver si me podian ayudar, por que no tengo idea, necesito saber como crear un log en .txt o su defecto ...
  #1 (permalink)  
Antiguo 22/01/2013, 16:22
 
Fecha de Ingreso: agosto-2012
Ubicación: México
Mensajes: 106
Antigüedad: 11 años, 7 meses
Puntos: 6
Exclamación Crear Log de Registro de Activdad de Usuarios

Hola buen dia, quisiera ver si me podian ayudar, por que no tengo idea, necesito saber como crear un log en .txt o su defecto guardarlo en base de datos, de todo lo que los usuarios hagan durante su sesion en el sitio web,que,que hizo, cuando, desde donde, tanto sucesos exitosos como fallidos.... Alguna idea en PHP ??
  #2 (permalink)  
Antiguo 22/01/2013, 16:30
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Crear Log de Registro de Activdad de Usuarios

No es complicado, únicamente necesitas alguna función que debes crear para hacer dicho registro, ejemplo.
Código PHP:
 // código...

mi_funcion('mensaje');

// más código... 
Dicha función debe tomar el mensaje que le pases y así insertar en la BD o escribir en el archivo como dices, el concepto es verdaderamente sencillo.

¿O qué parte es exactamente la que no entiendes?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 22/01/2013, 17:06
 
Fecha de Ingreso: agosto-2012
Ubicación: México
Mensajes: 106
Antigüedad: 11 años, 7 meses
Puntos: 6
Respuesta: Crear Log de Registro de Activdad de Usuarios

Cita:
Iniciado por pateketrueke Ver Mensaje
No es complicado, únicamente necesitas alguna función que debes crear para hacer dicho registro, ejemplo.
Código PHP:
 // código...

mi_funcion('mensaje');

// más código... 
Dicha función debe tomar el mensaje que le pases y así insertar en la BD o escribir en el archivo como dices, el concepto es verdaderamente sencillo.

¿O qué parte es exactamente la que no entiendes?
Ah pues el concepto en general, registrar el quien,que hizo,cuando,desde donde...
Por ejemplo el quien, pues tengo el nombre del usuario guardado en sesion, pero el que hizo, cuando lo hizo, y desde donde, no tengo idea... :/

Gracias por tu pronta respuesta.
  #4 (permalink)  
Antiguo 22/01/2013, 17:18
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Crear Log de Registro de Activdad de Usuarios

Cita:
Iniciado por art_rockerd Ver Mensaje
Ah pues el concepto en general, registrar el quien,que hizo,cuando,desde donde...
Por ejemplo el quien, pues tengo el nombre del usuario guardado en sesion, pero el que hizo, cuando lo hizo, y desde donde, no tengo idea... :/

Gracias por tu pronta respuesta.
Es que efectivamente tu debes hacerte esa idea, nosotros no sabemos lo que debes registrar ni tampoco conocemos tu sistema para sugerirte algo.

Para cuestiones de hora y fecha hay funciones, la IP, etc.

Dichos datos debes proveerlos en medida que necesites registrarlos, ¿de dónde sacarlos?

Pues eso lo debes saber tu.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 22/01/2013, 17:31
 
Fecha de Ingreso: agosto-2012
Ubicación: México
Mensajes: 106
Antigüedad: 11 años, 7 meses
Puntos: 6
Respuesta: Crear Log de Registro de Activdad de Usuarios

Cita:
Iniciado por pateketrueke Ver Mensaje
Es que efectivamente tu debes hacerte esa idea, nosotros no sabemos lo que debes registrar ni tampoco conocemos tu sistema para sugerirte algo.

Para cuestiones de hora y fecha hay funciones, la IP, etc.

Dichos datos debes proveerlos en medida que necesites registrarlos, ¿de dónde sacarlos?

Pues eso lo debes saber tu.
Pues mi sistema realiza ventas, en realida no se como podria registrar que el usuario hizo una venta, basicamente es lo que hace,supongo tambien cuanto tiempo estuvo logeado, a que hora inicio sesion, a que hora cerro sesion y desde donde..
  #6 (permalink)  
Antiguo 22/01/2013, 20:15
Avatar de CrepitantE  
Fecha de Ingreso: octubre-2006
Ubicación: Colombia
Mensajes: 421
Antigüedad: 17 años, 5 meses
Puntos: 7
Respuesta: Crear Log de Registro de Activdad de Usuarios

Es algo que requiere mucho trabajo, a cada una de las páginas en php y a cada link que haya que darle click hay que crear una variable e insertarla en una tabla con los datos que buscas.

Por ejemplo desde que inicia sesion (tambien compararlas con una cookie), almacenas la ip, naegador, etc.
Si le hace click a "contacto" en la página contacto debe tener informacion de donde viene el click, a que hroas le dio, todo esto se vaya almacenando en una tabla aparte.

Despues realizas una consulta a esa tabla con la informacion que busques.
Repito es algo que requiere muchas horas de trabajo depende la longitud de tu página.
__________________
-
  #7 (permalink)  
Antiguo 22/01/2013, 20:21
 
Fecha de Ingreso: enero-2011
Mensajes: 94
Antigüedad: 13 años, 3 meses
Puntos: 7
Respuesta: Crear Log de Registro de Activdad de Usuarios

Se podría ahorra trabajo si creas una función que haga ese trabajo y luego lo que haces es llamarla en cada evento que quieras.
  #8 (permalink)  
Antiguo 22/01/2013, 20:30
Avatar de CrepitantE  
Fecha de Ingreso: octubre-2006
Ubicación: Colombia
Mensajes: 421
Antigüedad: 17 años, 5 meses
Puntos: 7
Respuesta: Crear Log de Registro de Activdad de Usuarios

Cita:
Iniciado por nedyer Ver Mensaje
Se podría ahorra trabajo si creas una función que haga ese trabajo y luego lo que haces es llamarla en cada evento que quieras.
Efectivamente, tienes razón.
El trabajo es buscar cada opción que quieras almacenar y sea creada de una forma lo más simplista posible.
__________________
-
  #9 (permalink)  
Antiguo 22/01/2013, 22:07
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Crear Log de Registro de Activdad de Usuarios

hola pues la verdad seria muy bueno todo eso q dices pero seria una gran cantidad de datos en la bd ya q si deseas registrar cada cosa q haga el usuario, lo mas conveniente seria regitsrar la ip, tiempo y fecha de ingreso, tipo de navegador q ingreso, a q pagina ingreso, el nombre de usuario q inicio sesion y contraseña y esta si no se encuentra encriptada
  #10 (permalink)  
Antiguo 23/01/2013, 18:14
 
Fecha de Ingreso: agosto-2012
Ubicación: México
Mensajes: 106
Antigüedad: 11 años, 7 meses
Puntos: 6
De acuerdo Respuesta: Crear Log de Registro de Activdad de Usuarios

Cita:
Iniciado por nedyer Ver Mensaje
Se podría ahorra trabajo si creas una función que haga ese trabajo y luego lo que haces es llamarla en cada evento que quieras.
Hola amigo estuve trabajando el dia de hoy en eso y lo hice asi como lo menciones, hice una funcion en un archivo .php aparte y cada ves que el usuario realizaba una venta, cuando ejecutaba el query verificaba que realmente se hiciera el insert, y si se hacia ponia ahi la llamada a la función y le pasaba los parametros que queria insertar, en la funcion lo que hice fue crear un archivo de texto con un nombre dinamico que cambiara para cada dia, asi llevar un log de regisros por dia, por que asi lo necesito. les pongo como quedo la funcion del registro de log y la llamada de esta funcion en mis otras paginas... por si a laguien les sirve, claro este es especifico para mi apliaccion, pero les comento lo que guardo es el
CUANDO: Hora del evento
QUIEN: nombre de usuario
QUE:Lo que hizo el usuario.
DESDE DONDE: Ip del usuario...

archivo registroLogs.php
Código PHP:
Ver original
  1. /*este archivo lo incluyo en mis demas scripts cuando deseo registrar alguna accione que haga el usuario en esa pagina*/
  2. <?php
  3. function generaLogs($usuario,$accion,$origen){
  4.     //Definimos la hora de la accion
  5.     $hora=str_pad(date("H:i:s"),10," "); //hhmmss;
  6.     //Definimos el contenido de cada registro de accion por usuario.
  7.     $usuario=strtoupper(str_pad($usuario,15," "));
  8.     $accion=strtoupper(str_pad($accion,50," "));
  9.     $cadena=$hora.$usuario.$accion.$origen;
  10.     //Creamos dinamicamente el nombre del archivo por dia
  11.     $pre="log";
  12.     $date=date("ymd"); //aammddhhmmss
  13.     $fileName=$pre.$date;
  14.     //echo "$fileName";
  15.     $f = fopen("logs/$fileName.TXT","a");
  16.         fputs($f,$cadena."\r\n") or die("no se pudo crear o insertar el fichero");
  17.     fclose($f);
  18.    
  19. }//end generaLogs function
  20.  
  21. ?>


Ahora imaginemos un script de inicio de sesion.. pongo lo demas en pseucodigo y la llamada a la funcion como realmente lo hago..

Código PHP:
Ver original
  1. function loginUser($user,$pass){
  2. //aqui incluyo mi archivo con mi funcion para registrarLogs
  3. include "registroLogs.php";
  4.  
  5. $query="CONSULTA USUARIO EN BDD";
  6. $ejecuta=mysql_query($query,$conexion);
  7. include "conexion.php";
  8. /*SI NO ENCONTRON AL USUARIO ENTONCES REGISTRO ESE EVENTO EN MI FUNCION Y TAMBIEN NOTIFICO QUE NO LO ENCONTRO.*/
  9. if(mysql_num_rows($ejecuta)<1)
  10.         {
  11. /*REGISTRO LA ACCION EN MI LOG LLAMANDO A LA FUNCION Y ENVIANDOLE LOS PARAMETROS DESEADOS*/
  12.     $accion="FALLO INICIO DE SESION";
  13.     $origen=$_SERVER['REMOTE_ADDR'];
  14.     generaLogs($username,$accion,$origen);
  15.         echo "Usuario no Encontrado";
  16.         }else{
  17.            /*ENTONCES SI SI ENCONTRO AL USUARIO LO REGISTRO EN MI FUNCION Y          OBTENGO LOS DATOS Q NECESITO.*/
  18.         while ($row = mysql_fetch_array($ejecuta))
  19.             {
  20.                       /*REGISTRO LA ACCION EN MI LOG LLAMANDO A LA FUNCION Y ENVIANDOLE LOS PARAMETROS DESEADOS*/                                              
  21.                                                 $accion="USUARIO INICIA SESION EN EL SISTEMA";
  22.                         $origen=$_SERVER['REMOTE_ADDR'];
  23.                         generaLogs($username,$accion,$origen);
  24.                           //Obtengo los datos que quiero
  25.                           echo "usuario encontrado";
  26.                               }
  27.  
  28. }

Y bueno hago eso en donde quiera hacer algun registro de actividad, Muchas gracias por su ayuda, realmente no tenia ni idea, pensaba que habia alguna libreria o herramienta de PHP que guardaba Logs automaticamente de todo lo que se hacia en la sesion mientras estuviera activa. Pero esto me sirvio bien por que lo personalice.

Saludoss!

Última edición por art_rockerd; 23/01/2013 a las 18:16 Razón: cambiar datos
  #11 (permalink)  
Antiguo 23/01/2013, 21:15
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Crear Log de Registro de Activdad de Usuarios

Cita:
Iniciado por art_rockerd Ver Mensaje
[...] pensaba que habia alguna libreria o herramienta de PHP que guardaba Logs automaticamente de todo lo que se hacia en la sesion mientras estuviera activa [...]
Bueno, en realidad si existen bastante componentes para logging que podrías usar en lugar de usar tu código, que no es malo, pero podrías hacer un mejor trabajo usando algo mas profesional.

Pero algo así de mágico como comentas no existe.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #12 (permalink)  
Antiguo 23/01/2013, 22:16
 
Fecha de Ingreso: agosto-2012
Ubicación: México
Mensajes: 106
Antigüedad: 11 años, 7 meses
Puntos: 6
Respuesta: Crear Log de Registro de Activdad de Usuarios

Cita:
Iniciado por pateketrueke Ver Mensaje
Bueno, en realidad si existen bastante componentes para logging que podrías usar en lugar de usar tu código, que no es malo, pero podrías hacer un mejor trabajo usando algo mas profesional.

Pero algo así de mágico como comentas no existe.
Jaja pues en realidad esta bien , no quiero algo mágico, realmente apenas comienzo con PHP por lo tanto no conozco que tanto hay, por eso pedía apoyo para ver como se podía realizar esto de el registro de activdades del usuario en un log, pero estaba atorada por que no encontraba por donde buscarle, pero esta bien saber que si existen herramientas en PHP para esto...Gracias por la info :)

Etiquetas: log, registro, 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 11:17.