[SOLUCIONADO] Ayuda con auditoria php

Iniciado por deth, Diciembre 26, 2013, 11:01:43 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Diciembre 26, 2013, 11:01:43 AM Ultima modificación: Agosto 20, 2014, 08:48:59 PM por Expermicid
hola amigos he creado una base de datos llamada "auditoria" con una tabla llamada "auditoria" que tiene los sig campos:
usuario,ip,fecha,hora,accion.

como haria si quiero hacer que guarde lo que cada usuario hace en la pagina?
me marca error mi codigo
aqui les pongo mi codigo:

Código: php
function registrar_log('"$usuario,'".$_SERVER['REMOTE_ADDR'].",'".date(Y:m:d)."','".date(H:i)."',$accion='se borro un item');  {

include("bd.php");

if (mysqli_query($link,"INSERT INTO auditoria (usuario,ip,fecha,hora,accion) VALUES ('$usuario','$ip','$date','$time','$accion')")) {
return true;
} else {
return false;
}


favor corregirlo

gracias de antemano.

Creo que tienes problemas con los parametros que envias para la función, debería ser algo así:

Código: php

    function registrar_log($usuario, $ip, $date, $time, $accion);  {
     
                    include("bd.php");
                   
                    if (mysqli_query($link,"INSERT INTO auditoria (usuario,ip,fecha,hora,accion) VALUES ('$usuario','$ip','$date','$time','$accion')")) {
                            return true;
                    } else {
                            return false;
                    }
    }


Y cuando lo vas a utilizar haces algo como:

Código: php

   registrar_log($_SESSION["usuario"], $_SERVER['REMOTE_ADDR'], date(Y:m:d), date(H:i), 'se borro un item');


Suponiendo que tienes almacenado el usuario en su sesión, estaría bueno que envies que error te da
No se si está del todo bien porque lo hice medio a la apurada y no verifiqué tu código del todo

Por último te quiero decir que si vas a tener una bd de una sola tabla creo que lo mejor sería tener una bd no relacional
Avisame si te funciona o no

Saludos
Destructor

Diciembre 26, 2013, 01:57:28 PM #2 Ultima modificación: Diciembre 26, 2013, 07:09:35 PM por deth
gracias amigo funciono pero no se guarda el usuario, yo tengo otra base de datos llamada usuarios y es donde esta el campo $usuario
entonces tendria que unir la bd con la de auditoria?

y la hora y la fecha siempre me salen mal
le he puesto tambie este codigo y sale mal siempre sale 0000-00-00 y la hora 00:00:00

date_default_timezone_set('America/Mexico_City');

como lo soluciono?


entonces ahi tendrías que trabajar más con la base de datos, el usuario de la tabla auditoria debería ser una clave foranea de el usuario en la tabla usuarios. Además, en la tabla auditoria las clave primaria estaria conformada por el usuario, la fecha y la hora.

Sinceramente lo de la fecha no se bien, prueba con la zona horaria de mexico, un ejemplo:
date_default_timezone_set('UTC');

Saludos,
Destructor