2012-02-21 149 views
0

我有一个产生的SWF文件的动态链接脚本....JavaScript的点击跟踪,AHREF链接

如脚本会产生

<a href=" { url }/swf/file . swf ">Click File</a> 

当他们点击链接它打开swf文件在灯箱广告,所以我不能使用PHP的,因为它的客户端

我可以改变脚本,它将增加

onClick="javascript: FUNCTION;" 

如何将我的字一个javascript函数写评为基本目录文件

“点击的log.txt”与链接和时间戳的HREF ...

可以说的链接点击的URL是

http://example.com/data/swf/file1.swf 

我想写成

1329849120 , 82.**.***.*** , /data/swf/file1.swf 

我相信它更容易编写完整的文件路径日志文件,但我会很乐意与不仅仅是文件名字,甚至完整的URL,如果它是最简单的....

我已经编写这与在页面加载多次PHP的工作,但不能写javascript做这个动作.....

谢谢你们

+0

如果我明白你的理解,你正试图通过javascript写一个文件到你的服务器?这是不可能的...... – 2012-02-21 19:48:12

+0

不知道你正在尝试做什么,但你需要将点击返回到服务器来写入文本日志。 – Asken 2012-02-21 19:49:55

+0

我以为JavaScript会使用的语言.....作为其客户端,用户点击链接.....是另一种编码语言,将能够执行我需要的文件写入? – 2012-02-21 19:50:42

回答

0

这正好在头(AJAX请求)

<script type="text/javascript"> 
function clickLog(str) 
{ 
if (str=="") 
    { 
    document.getElementById("txtHint").innerHTML=""; 
    return; 
    } 
if (window.XMLHttpRequest) 
    {// code for IE7+, Firefox, Chrome, Opera, Safari 
    xmlhttp=new XMLHttpRequest(); 
    } 
else 
    {// code for IE6, IE5 
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
xmlhttp.onreadystatechange=function() 
    { 
    if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
    document.getElementById("txtHint").innerHTML=xmlhttp.responseText; 
    } 
    } 
xmlhttp.open("GET","click-log.php?url="+str,true); 
xmlhttp.send(); 
} 
</script> 

这打开 '点击log.php' 与URL参数 'STR' < < < 'STR' 被定义为“本在onclick功能括号

<a href=" { url }/file .swf " onClick="clickLog(this.href)">Click Me</a> 

当点击这个链接打开和处理PHP文件,与链接HRE .href” F(this.href)作为参数的URL =

脚本即使有这个来了.....

<div id="txtHint"></div> 

如果你把这个div下方点击的链接,它会响应无论点击log.php输出......

这将说明如下....

这是我的PHP文件

<?php 

$url = $_GET['url']; 

$time = date('U'); 

$ip = $_SERVER['REMOTE_ADDR']; 

$fp = fopen('click-log.txt', 'a'); 
$fwrite = fwrite($fp, $time.' , '.$ip.' , '.$url.' 
'); 

// --- echo 'Log Written'; --- // 

?> 

这写入到文本文件'click-log结束。txt'点击链接的时间戳,ip和href

被注释掉的回显行,一旦点击链接并处理了ajax请求,将会在文本“txtHint”div中插入文本“Log Written”

使用的所有文件都在根目录但任何人想实现他们的网站上这个脚本谁很可能已经知道如何更改文件位置等

....

.... 。感谢信息家伙....另一个成功的脚本:)

ps,现在写脚本来显示漂亮的图表和饼图中的日志文件:lmao:

1

Javascript是一种客户端语言,它在客户端(访问者)计算机上执行,对于这种日志记录,您应该使用服务器端语言(如PHP)在您的Web服务器上创建日志文件。你可以试试看这个网站的简单日志功能。

http://svidhya.wordpress.com/2008/02/01/creating-and-writing-log-files/

+0

正如我在我的问题中指出,我写了很多脚本来写入日志文件在PHP中,但不知道如何调用客户端事件,在不刷新页面或显示任何内容的情况下加载脚本,点击链接的url参数 – 2012-02-21 19:55:59

+0

您可以使用ajax触发将创建日志文件的php文件。我希望这个例子有助于:) http://www.switchonthecode.com/tutorials/simple-ajax-php-and-javascript – 2012-02-21 19:59:11

+0

谢谢,发现更简单的教程@ http://www.w3schools.com/PHP/php_ajax_database .asp .....脚本编写,现在在网站上实现:)认为JavaScript会做到这一点,但现在我知道阿贾克斯即时将使用它相当多:) – 2012-02-21 20:39:12