Jquery PHP Ajax数据记录器失败


Jquery PHP Ajax data logger fails

从上一个问题开始:使用Javascript创建日志文本文件我想从新闻滚动条记录点击事件。事件检测工作并触发警报。

    $("a.marq").click(function(){
    var url = $(this).attr('href');
    $.ajax({
      type:'POST',
      data:"ClickedButton="+url, 
      url: 'logger.php',
      success: function(data){
        //alert('req: '+url);
      }
      }); // END Ajax 
   });

从引用的问题中获取php代码,我创建了记录器:

   <?php
     // File: logger.php
    $myFile = "clicklog.txt";
    $fh = fopen($myFile, 'w') or die("can't open file");
    $stringData = $_POST['ClickedButton'];
    fwrite($fh, $stringData);
    fclose($fh);
  ?>

单击事件会触发警报并显示正确的数据,但服务器不会记录任何内容。我查看了服务器日志,似乎没有发现任何问题。服务器正在运行Apache mod_security,日志中没有我能发现的内容。这是一个简单的"先爬行后运行"代码,但我厌倦了爬行,于是发布了这个问题。我把logger.php放在url根目录中,触摸了clicklog.txt文件。

Apache写权限,需要g+Apache,774。还需要"a"而不是"w"来附加到日志文件,$fh=fopen($myFile,"a")或die("无法打开文件");感谢评论者的错误处理和其他可能有所帮助的更改
工作代码:

     $("a.marq").click(function(){
        var url = $(this).attr('href');
        $.ajax({
        type:'POST',
        data: {'ClickedButton': url}, 
       url: 'code/logger.php',
       error: function(jqXHR, textStatus, errorThrown) {
            alert('An error occurred... ');
            },
       success: function(data){
         //alert('req: '+url);
     }
     }); // END Ajax 
   });

    <?php
   // File: logger.php
   // ----------------------------------------------------------------------
     $myFile = "/xxxxx/code/click.log";
     $fh = fopen($myFile, 'a') or die("can't open file");
     $stringData = $_POST['ClickedButton'];
     fwrite($fh, $stringData);
     fclose($fh);
   ?>