2014-05-18 75 views
0

在我的网站上:http://gracebook.pl/我添加了fancybox,以便用户可以显示更大版本的图像(请参阅每个图像附近的放大镜图标)。用fancybox点击点击?

在每张照片下还有多少次被点击的信息。但是此功能仅在用户点击照片并在新页面中打开时才起作用。

我试图弄清楚是否有一种方法可以用fancybox对点击进行计数,以便在用户单击放大镜并启动fancybox时图像获得+1视图。

任何线索?

我想我应该以某种方式增加一个功能是这样的:

function myCall() { 
    var request = $.ajax({ 
    url: "PHP FILE URL", 
    type: "GET", 
    data: {n : '__hash__'}, 
    dataType: "html" 
    }); 

然后查询数据库,PHP:

mysql_connect("IP", "USER", "PASS") or die(mysql_error()); 
mysql_select_db("DB NAME") or die(mysql_error()); 

mysql_query("UPDATE `TABLE` SET `Views` = `Views` +1 WHERE `Hash` = 'SOMETHING'"); 

但我不知道如何做到这一点:)

我会很感激任何线索。

我正在使用的版本:1.3.4(11/11/2010)。

回答

0

您可以轻松地点击计数,如:

var click = 0; 
function myCall() { 
    click++; 
    var request = $.ajax({ 
     url: "PHP FILE URL", 
     type: "GET", 
     data: {n : '__hash__',click : click}, 
     dataType: "html" 
    }); 
} 

HTML

<div class="callFancybox" onclick="myCall()"></div> 
+0

谢谢,但我想这个做这样的,在我的情况有许多问题与HTML和的onclick。例如,当我尝试通过散列标识图像 ,函数myCall显示正确的散列,但php不。这就是为什么我试图找出如何将此函数添加到jquery.fancybox.js文件(与afterload/onComplete等),并从那里调用PHP后,某些图像已加载,我可以跟踪它的散列或ID。对不起,我的英文:) – user3650459

+0

我真的不知道你的问题。为什么PHP不接收正确的散列? PHP展示了什么? – Lewis

+0

myCall函数显示正确的哈希/ ID,但PHP始终显示页面上最后一个图像的哈希或ID。 – user3650459