我是javascript和数据库操作的新手。
有没有一种方法,每次用户进入页面时,鼠标移动开始记录,一旦用户离开页面,所有数据(Coords x和y,以及时间)都存储在数据库中供以后分析?
我知道很多网站都这样做,所以必须有一个简单的方法。
一个例子很好,我的数据库是MySql,我的网站是wordpress。
答案 0 :(得分:10)
<强>使用Javascript:强>
document.onmousemove = function(e){
var pageCoords = "( " + e.pageX + ", " + e.pageY + " )";
console.log(pageCoords);
};
卸载javascript:
window.onunload=function(){
//SomeJavaScriptCode
};
<强> jQuery的:强>
var pageCoords = []; //array for storing coordinates
$(document).onmousemove = function(e){
pageCoords.push("( " + e.pageX + ", " + e.pageY + " )");//get page coordinates and storing in array
}
$( window ).unload(function() {
//make ajax call to save coordinates array to database
});
答案 1 :(得分:1)
一种但非常糟糕的方法是跟踪鼠标的位置并不断将位置放入mysql db
(function() {
window.onmousemove = handleMouseMove;
function handleMouseMove(event) {
event = event || window.event; // IE-ism
// event.clientX and event.clientY contain the mouse position
}
})();
读一读:
Determine mouse position outside of events (using jQuery)?
和此:
Javascript - Track mouse position
阅读完毕后,您将能够看到控制台中正在显示数据。现在我们需要将它从控制台发送到PHP然后再发送到mysql。
以下说明如何: http://www.coderslexicon.com/the-basics-of-passing-values-from-javascript-to-php-and-back/
最后,我建议阅读:
http://php.net/manual/en/mysqli.query.php
不要使用MySQL查询。使用MySQLi,因为不推荐使用MySQL。