我有3页,我试图“跟踪”可以这么说。注册过程是3页。基本上,我不想计算不按顺序的命中(即,如果用户重新检查到感谢页面(第3页)),我不希望它再次计算转换。
这样的事情 1.用户进入着陆页+1点击 2.用户输入中间页+ 1hit 3.用户输入感谢页面+1转换
我知道如何增加计数非常容易点击,但我不确定如果它们不按顺序如何“不”计算它。
答案 0 :(得分:3)
您可以设置会话变量,以便在第1页上将其设置为“1”,第2页=“2”,依此类推,但只设置变量,如果它当前小于当前页码,那么:
session_start();
if($_SESSION['cur-page'] < [CURRENT PAGE NUMBER]) {
$_SESSION['cur-page'] = [CURRENT PAGE NUMBER];
logHit();
}
logHit()跟踪页面匹配。
答案 1 :(得分:1)
SESSIONS会解决您的问题。
在第一页上执行以下操作:
session_start();
$_SESSION['page'] = '1';
// Store signup values in session
关于第二个:
session_start();
if ($_SESSION['page'] != 1 || $_SESSION['page'] != 3) {
header("Location: /page1");
exit();
} elseif ($_SESSION['page'] == 'complete') {
header("Location: /resubmit-error");
} else {
$_SESSION['page'] = 2;
}
// Store additional values in session
关于第三个:
session_start();
if ($_SESSION['page'] != 2) {
header("Location: /page2");
exit();
} elseif ($_SESSION['page'] == 'complete') {
header("Location: /resubmit-error");
} else {
$_SESSION['page'] = 3;
}
// Store additional values in session again and submit values to database or other source.
最后谢谢你的页面:
if ($_SESSION['page'] != 3) {
header("Location: /page3");
} elseif ($_SESSION['page'] == 'complete') {
header("Location: /resubmit-error");
} else {
$_SESSION['page'] = 'complete';
// Store data
}
在第三页的最终提交重定向到完成/感谢页面。
使用此方法,用户不会在不重新填写表单的情况下返回最终页面。
答案 2 :(得分:0)
设置名为step的cookie或会话变量。在运行跟踪代码之前,请确保当前步骤大于cookie中存储的步骤,否则不要跟踪它。通常对于转化跟踪,最好在会话中使用Cookie,因为您可以跟踪转换30天(或者您想要多长时间),而不是通常在用户关闭浏览器窗口时结束的短会话。
第1页
$step=1;
if (!$_COOKIE['step']) {
setcookie('step',$step,time()+(86400*30),'/','.yourdomain.com');
//run tracking code (log database, whatever)
}
在第2页+
$step=2;
if ($_COOKIE['step'] && $_COOKIE['step']<$step) {
setcookie('step',$step,time()+(86400*30),'/','.yourdomain.com');
//run tracking code (log database, whatever)
}