1

问题

我的客户在最后得到一个带有参数的 URL,当他们点击它时,URL 看起来像这样

www.website.com?utm_content=1223324

我想分配1223324到 asession并在整个网站上携带它,直到utm_content值不同。如果价值不同,我想在整个网站上携带这个新价值。

我想做什么

我试图抓住utm_content价值并将其传递出去,直到用户提交我的联系表格。我正在添加utm_content到联系表单提交中,所以它会出现在我身上。如果用户单击具有不同值的另一个链接,我想utm_content用新的 ID 替换当前 ID,以便通过联系表向我提供新 ID

我的 PHP 代码

$getTrackingCodeCurrentURL = $_GET['utm_content'];


if(isset($_SESSION['getSSourceId'])){


    if($getTrackingCodeCurrentURL != $_SESSION['getSSourceId'])
    {
        $_SESSION['getSSourceId'] = $getTrackingCodeCurrentURL;
        echo "Session NOT the same : " . $_SESSION['getSSourceId'];
    }
    else{

        echo "Session SET TO same : " . $_SESSION['getSSourceId'];
    }

 } else {

    $_SESSION['getSSourceId'] = $getTrackingCodeCurrentURL;
    echo "Session not set : " . $_SESSION['getSSourceId'];

}

问题

当访问者转到另一个页面时,getSSourceId它不会被传递。我认为是因为它将$getTrackingCodeCurrentURL值(当访问者转到另一个页面时为 NULL)分配给$_SESSION['getSSourceId']. 我怎样才能防止这种情况发生?

4

1 回答 1

2

这就是我所需要的

if(isset($_GET['utm_content'])){

    $_SESSION['getSSourceId'] = $_GET["utm_content"]; 
    $getTrackingCodeCurrentURL = $_SESSION['getSSourceId'] ;
    echo "IS SET : ".$getTrackingCodeCurrentURL;

 } else {

     $getTrackingCodeCurrentURL = $_SESSION['getSSourceId'] ;
    echo "NOT SET : ".$getTrackingCodeCurrentURL;

}
于 2012-10-30T03:14:24.937 回答