我有复杂的php跟踪器,用于存储用户点击等。我在这里为pixel.php
提供示例代码
session_start();
header('Content-type: image/png');
echo gzinflate(base64_decode('6wzwc+flkuJiYGDg9fRwCQLSjCDMwQQkJ5QH3wNSbCVBfsEMYJC3jH0ikOLxdHEMqZiTnJCQAOSxMDB+E7cIBcl7uvq5rHNKaAIA'));
if (!isset($_SESSION['track']) || $_SESSION['track'] == '')
{
$_SESSION['track'] = "New User";
//code to insert new user
}
else
{
$_SESSION['track'] = "Old User";
//codes to update old user
}
现在我想在用户点击我的注册表单或一些句子时触发像素。所以我使用下面的代码
<script>
function firepixel(val) {
var img = document.createElement("img");
img.setAttribute("src", "https://www.stimulatemind.com/track/pixel.php?id="+val);
/* set other attributes here */
document.body.appendChild(img);
}
</script>
<script>
$(document).on('click', '[data-pixel]', function() {
var val = $(this).data("pixel");
firepixel(val);
}) ;
</script>
这个代码在桌面和ios中运行得非常好,但对于android chrome和其他一些浏览器。每次调用pixel.php时都会创建新的Session。
我尝试了jquery $ .get $ .getJSON等,但每次创建新会话时都会。
任何替代或交叉浏览器方法吗?谷歌分析如何做到这一点?
答案 0 :(得分:0)
header('Content-type: image/png');
echo gzinflate(base64_decode('6wzwc+flkuJiYGDg9fRwCQLSjCDMwQQkJ5QH3wNSbCVBfsEMYJC3jH0ikOLxdHEMqZiTnJCQAOSxMDB+E7cIBcl7uvq5rHNKaAIA'));
session_start();
1)如果它的PNG图像存储它gzip只是膨胀它的大小。
2)为什么在使用AJAX或SJAX请求更加灵活地执行此操作并避免重新绘制时,为什么还要创建图像?
3)刷新标题后你是starting your session
4)您的错误记录无法正常工作