我正在尝试使用jQuery来计算点击次数,将它们存储在Cookie中,然后将它们回送出来。
我在网上发现了一些允许我这样做的代码,但我似乎无法使其工作。它正在创建cookie文件并在其中存储“0”,但在点击链接时不会更新。关于这段代码出错的任何指导都会很棒。 :
clickCount.js
jQuery(function(){
$("a").click(function{
var cookiename = 'linkcounter';
if($.cookie(cookiename) == null){
$.cookie(cookiename, 0);
}
$.cookie(cookiename, $.cookie(cookiename)+1);
});
});
的index.php
<?php
session_start();
$counter_file = 'counter';
if(!file_exists($counter_file)){
file_put_contents($counter_file, 0);
}
$counts = (int)file_get_contents($counter_file);
file_put_contents($counter_file, $counts++);
// you can use $counts if you want to display it on the page.
?><!DOCTYPE html>
<html>
<head>
<title>Link Click Counter Test</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript" src="jquery.cookie.js"></script>
<script type="text/javascript" src="countdetect.js"></script>
</head>
<body>
<a href="http://www.google.com/"></a><br />
<a href="<?php echo $_SERVER['PHP_SELF']; ?>"></a><br />
Link clicks: <?php echo $counts; ?>
</body>
</html>
答案 0 :(得分:1)
在PHP代码中,您不是将点击计数存储到cookie中,而是存储到文件中。
您必须通过从JavaScript向服务器发出AJAX请求来更新计数器文件,或者实际在PHP文件中编写cookie:
scanf
确保在JavaScript和PHP中使用相同的Cookie名称。