将复选框更改的时间和日期写入文本文件

时间:2017-08-21 07:57:24

标签: javascript php jquery mysql datetime

我在更改复选框时遇到时间和日期时遇到问题。

我有一个名为"的面板"其中填入了用户条目,每个条目都有一个" status"数据库中的字段,即" 1"或" 0"。 我使用此状态查看谁在线并将复选框设置为按钮样式,1 =绿色,0 =灰色。

现在,我想在此状态发生变化时获取当前系统时间,并将其写入文本文件。

例如: 当状态从0更改为1时,将以下文本写入文档: [当前时间] + [来自MySQL数据库的用户名] +"登录"

当状态从1变为0时,写: [当前时间] + [来自mySQL数据库的用户名称] +"已注销"

继承我的代码:

#this is where I change the status field in MySQL

<?php
$id = $_POST["id"];
$update = mysql_query("update panel 
    SET status = CASE
        WHEN status = '1' THEN '0'
        WHEN status = '0' THEN '1'          
    END 
WHERE id = $id")
?>

#this is where I execute the function

<td>
<script type="text/javascript" src="scripte/jquery-2.1.4.min.js"></script> 
<script>
function save_checkbox(id)
{
$.post( 'save_check.php' , { checked : $(this).attr("checked"), id: id });
}
</script>
<div class="switch anws">
<input type="checkbox" name="anw_status" value="1" onchange="save_checkbox(<?php echo "$row->id"; ?>);" <?php if ($row->status==1) echo "checked";?>>
<label class="label"><p><?php echo "$row->gender $row->person";?></p></label>
</div>
</td>

1 个答案:

答案 0 :(得分:0)

我建议在数据库中为此创建一个单独的表,而不是将其写入文本文件。

但是,这是你可以写入txt文件的方法: 我们假设您在与log.txt相同的文件夹中创建了一个名为save_check.php的文本文件,然后在调用save_check.php时可以执行此操作:

首先添加一个sql查询以获取新状态和用户名,并将它们设置为变量$state$name然后

$my_file = 'log.txt';
$handle = fopen($my_file, 'a') or die('Cannot open file:  '.$my_file);

if ($state == 0 {
  $data = "\n" . date('m/d/Y h:i:s a', time()) . " " . $name . " logged out";
} else {
  $data = "\n" . date('m/d/Y h:i:s a', time()) . " " . $name . " logged in";
}

fwrite($handle, $data);
fclose($handle);
  • \n是为了确保它在一个新行上。
  • date('m/d/Y h:i:s a', time())将获取当前时间并将其格式化
  • fwrite将附加到文件