我有一个包含几列的简单表格。我正在更新数据库中的视图计数,但问题是我每隔20秒进行一次ajax调用。我只想计算页面视图,但AJAX调用也被视为视图。
我的代码很简单。
$res = sql_query("select * from tableA where user='XYZ'");
sql_query("update tableA set views=views+1 ");
这可以完成这项工作,但由于AJAX,它不断增加数据库中的视图数量。任何人都可以帮助我,以便我只能算实际观点,而不是AJAX调用吗?
答案 0 :(得分:1)
更改更新页面匹配的逻辑。检查AJAX HTTP标头(请参阅此处:http://davidwalsh.name/detect-ajax),并仅相应地更新表。
if(empty($_SERVER['HTTP_X_REQUESTED_WITH']) || strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) != 'xmlhttprequest') {
sql_query("update tableA set views=views+1 ");
}
答案 1 :(得分:0)
你可以试试这个:
<body onload="your function goes here">