javascript - 当用户单击 'submit' 按钮时捕获信息到日志文件

标签 javascript php jquery mysql database

这个问题的解决方案很可能涉及数据库,但不幸的是,Squarespace 还不能很好地处理许多数据库,例如 mySQL。

我的问题是,当网站上的用户单击“提交”按钮和管道时,是否有任何方法或代码可以在不设置数据库的情况下实现以捕获某些信息(用户名、IP 地址、位置、时间戳)它到一个日志文件?我确定必须有,对于没有准备好与我的问题相关的任何代码,我深表歉意,我仍在研究解决方案。我可以提供按钮的 jQuery 代码:

<body>
  <div id="popup" align="right">
    <object type="text/html" id="terms" data="/popup-form" width="60%" height="90%" style="overflow: auto">
    </object><br>
    <form>
      <input id="cancel" type="button" value="Cancel" onClick="history.go(-1);return true;"/>
      <input id="submit" type="submit" value="I Agree" />
    </form>
  </div>

  <script src="http://code.jquery.com/jquery-latest.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
  <script>
    $("form").on("submit", function(e){
      e.preventDefault();
      $("#popup, #overlay").hide();
      $.cookie("popup", "displayed", { expires: 7 });
    });
    var hasSeenpopup = $.cookie('popup');
    if(!hasSeenpopup){
      $("<div>",{ id : "overlay" }).insertBefore("#popup");
      $("#popup").show();
    }
  </script>
</body>

最佳答案

使用 jQuery 使用 AJAX 发送数据

$("form").on("submit", function(e){
    //your previous code
    $.ajax({
         type: "POST",
         url: "myform.php",
         data: {'form': $("form").serialize()},
         success: function(message) {
            //do whatever
         }
      });
   return false;
});

然后处理 myform.phpwrite the data 中的 $_POSTsome.log

$string = '';

$date = date('Y-m-d H:i:s');

$ip = '';
if (!isset($_SERVER['SERVER_ADDR'];))
   $ip = $_SERVER['SERVER_ADDR'];

$string = $date.' : '.$ip.PHP_EOL;

file_put_contents('some.log', $string,  FILE_APPEND);

关于位置 - 可能存在问题,深入了解此 post.

关于javascript - 当用户单击 'submit' 按钮时捕获信息到日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30063004/

相关文章:

javascript - SpyOn 一个 mock 的 Jest 模块没有正确监视

javascript - 使用 BrowserAction 设置背景图像

javascript - 如何在 Angular 8 中隐藏标题组件的导航栏按钮以防止路由?

javascript - 如何在Chrome扩展内容脚本中获取D3节点的数据

php - cakephp 3 在记录时使用范围

php - 无法执行语句(42S22 - 1054 - '' 中的未知列 'field list')zf2

php - 在 PHP 中检测用户语言 - 稳定的解决方案

javascript - 如何使用 JQuery 创建一个新的 img 标签,使用来自 JavaScript 对象的 src 和 id?

jquery - 重新绑定(bind)hoverIntent jQuery插件

php - 如何获取 jQuery .post() 中的返回值