通过多个页面跟踪访问者的最简单方法是什么?

时间:2014-03-03 13:49:09

标签: php html cookies

我有来自有机搜索和付费搜索的用户。

有机用户登陆page.php,付费用户登陆page.php?source=paid

page.php上的PHP变量会根据source字符串进行更改,以帮助我确定用户最初来自哪里,例如,如果他在同一页面上直接购买我的网站上的内容,我有一个迹象。

问题:

我的网站上有多个页面。一旦付费用户决定导航到page2.php等其他网页,指示变量将无效,因为他导航到page2.php,而不是导航到page2.php?source=paid

所以一个可能是凌乱的解决方案,就是在整个网站上拖动字符串,在每个链接上放置一个IF/ELSE,它将插入页面中所有href的末尾,一个?source=paid字符串,用户最初使用?source=paid字符串登陆。

但是,还有另一种选择吗?我想有办法用饼干做到这一点?但我从来没有处理过cookie,而是处理过,除非它很容易。

由于

2 个答案:

答案 0 :(得分:0)

这正是sessions的用途:

  

会话是针对单个会话ID为各个用户存储数据的简单方法。这可用于在页面请求之间保留状态信息。会话ID通常通过会话cookie发送到浏览器,ID用于检索现有会话数据。

答案 1 :(得分:0)

要解决此问题,我建议您使用Sessions。

在第一页上,您需要使用以下内容设置会话变量:

<?php>
session_start();
if isset($_GET['source']) {$_SESSION['source'] = $_GET['source'];}

and the rest of your first page goes here..

?>

在其他页面上,你可以回忆起会话变量:

<?php>
session_start();
if ($_SESSION['source'] == 'paid')
{ paid version}
else 
{unpaid version}

?>