我需要做的是,首先有一张列表页,有若干条数据,用户可以对数据进行查看、修改、编辑等操作,然后就是还有一个按钮,点击以后显示用户对该数据做过的所有操作(包括操作人、操作的Action、时间等),请高手指点一二。
该回答引用ChatGPT
要记录用户对数据的操作,你需要将每个用户的操作记录下来,并将记录保存到数据库中。在PHP中,可以使用以下步骤实现:
id:自增主键
user_id:操作人的用户ID
action:操作的类型,比如"查看"、"修改"、"删除"
data_id:被操作的数据的ID
timestamp:操作的时间戳
以下是示例代码:
// 记录操作函数示例
function view_data($data_id, $user_id) {
// ... 查看数据的操作
// 记录操作
$action = "查看";
$timestamp = time();
$query = "INSERT INTO operation_log (user_id, action, data_id, timestamp) VALUES ('$user_id', '$action', '$data_id', '$timestamp')";
// 执行查询
$result = mysqli_query($conn, $query);
}
// 显示操作记录示例
function show_operation_log($data_id, $user_id) {
$query = "SELECT * FROM operation_log WHERE user_id='$user_id' AND data_id='$data_id'";
// 执行查询
$result = mysqli_query($conn, $query);
// 显示操作记录
while ($row = mysqli_fetch_assoc($result)) {
echo $row['action'] . " " . $row['timestamp'] . " by user " . $row['user_id'] . "<br>";
}
}
需要注意的是,为了确保记录操作的可靠性,应该在操作记录表中设置适当的约束和索引,以及对表进行定期的清理和备份。