PHP活动日志

时间:2018-12-05 17:25:23

标签: php mysql

因此,我有一个基于PHP的Web应用程序和一个基于MySQL的数据库。 该应用程序注册员工(table name: colaboradores)和项目(Table name: ativos)(例如计算机和类似的东西),然后在应用程序上具有users表(基本上用于创建和删除记录之类的权限)

重点是,我希望将任何用户执行的所有操作都记录在日志文件中(我正在考虑在BD上创建一个名为log的新表?),并在每个项目的页面都记录了该项目的整个生命周期(例如,在log上注册,用户麦克今天向其员工Sam添加了Iphone)。 我该怎么做的任何提示?

2 个答案:

答案 0 :(得分:0)

您可以使用比数据库更快的日志文件系统来存储用户活动(插入,更新,删除):

$file=fopen('activity.log','a');

// in insert condition
if($inser)
{
    fwrite($file,$user->name.' : insert'."\n");


}
// in update condition
if($update)
{
    fwrite($file,$user->name.' : update'."\n");


}
// in delete condition
if($delete)
{
    fwrite($file,$user->name.' : delete'."\n");


}

fclose($file);

答案 1 :(得分:0)

这是用于写入指定日志目录的功能。您只需传递日志消息,它就会创建/更新以当前日期命名的日志文件。确保使用chown授予日志目录的nginx / apache所有权。

function logActivity($data) {
    file_put_contents("/home/logs/" . date("m-d-Y"), date("h:i a") . ": " . $data . "\n", FILE_APPEND | LOCK_EX);
}