Cita:
Iniciado por nedyer 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/*este archivo lo incluyo en mis demas scripts cuando deseo registrar alguna accione que haga el usuario en esa pagina*/
<?php
function generaLogs($usuario,$accion,$origen){
//Definimos la hora de la accion
//Definimos el contenido de cada registro de accion por usuario.
$cadena=$hora.$usuario.$accion.$origen;
//Creamos dinamicamente el nombre del archivo por dia
$pre="log";
$date=date("ymd"); //aammddhhmmss $fileName=$pre.$date;
//echo "$fileName";
$f = fopen("logs/$fileName.TXT","a"); fputs($f,$cadena."\r\n") or
die("no se pudo crear o insertar el fichero");
}//end generaLogs function
?>
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 originalfunction loginUser($user,$pass){
//aqui incluyo mi archivo con mi funcion para registrarLogs
include "registroLogs.php";
$query="CONSULTA USUARIO EN BDD";
include "conexion.php";
/*SI NO ENCONTRON AL USUARIO ENTONCES REGISTRO ESE EVENTO EN MI FUNCION Y TAMBIEN NOTIFICO QUE NO LO ENCONTRO.*/
{
/*REGISTRO LA ACCION EN MI LOG LLAMANDO A LA FUNCION Y ENVIANDOLE LOS PARAMETROS DESEADOS*/
$accion="FALLO INICIO DE SESION";
$origen=$_SERVER['REMOTE_ADDR'];
generaLogs($username,$accion,$origen);
echo "Usuario no Encontrado";
}else{
/*ENTONCES SI SI ENCONTRO AL USUARIO LO REGISTRO EN MI FUNCION Y OBTENGO LOS DATOS Q NECESITO.*/
{
/*REGISTRO LA ACCION EN MI LOG LLAMANDO A LA FUNCION Y ENVIANDOLE LOS PARAMETROS DESEADOS*/
$accion="USUARIO INICIA SESION EN EL SISTEMA";
$origen=$_SERVER['REMOTE_ADDR'];
generaLogs($username,$accion,$origen);
//Obtengo los datos que quiero
echo "usuario encontrado";
}
}
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!