-1
 <?php
     if ($id) 
    {   
     if (empty($_COOKIE['id'])) {
     setcookie('id', $id, strtotime("+2 years"), '/');
}   
    $db->select("username", "member", "username='$id' and status=1");
        if($db->num_rows() > 0) {
        $sponsor=$db->result(0, "username");
        $ref = $sponsor;
    } 
    else {
        $db->select("username", "member", "status=1 and paket=1", "rand()", 1);
        $ref=$db->result(0, "username");
        header("location:?id=$ref");    
          } 

    } else {
        $db->select("username", "member", "status=1 and paket=1", "rand()", 1);
        $sponsor=$db->result(0, "username");
        $ref=$sponsor;
        header("location:?id=$ref");
    }
    ?>

上面的代码是我的附属脚本,用于将 cookie 设置为该附属 ID,我如何在每次用户单击新链接示例 www.domain.com/?id=user1 时设置新 cookie,然后将所有 id 和 cookie 设置为 user1 ,并且用户在同一台​​计算机上单击新链接 www.domain.com/?id=user2 ,如何使链接转到 www.domain.com/?id=user1 而不是 user2 ?(因为存在 cookie user1)

如果计算机用户在其浏览器中删除 cookie,我可以将可用的 cookie 设置为 2 年吗?

有人可以帮助如何使此脚本与 cookie 一起使用

4

1 回答 1

0

您可以使用 PHP setcookie() 设置初始 cookie;

setcookie('affiliateid', $id, strtotime("+2 years"), '/');

这很可能会出现在您的第一个 IF 语句中。

然后,要检查 cookie 是否存在以免覆盖它,只需使用全局 $_COOKIE 变量/数组。

if (empty($_COOKIE['affiliateid'])) {
    //use the setcookie() code here since the cookie doesn't exist
}

顺便说一句...您的代码中有 2 个 ELSE 语句,这是不对的,第二个 ELSE 语句将永远不会被使用,否则我猜它会引发警告。

让我知道这是否有帮助。

于 2013-08-08T19:30:39.517 回答