Here's a scenario.
I am setting up a sponsor referral link. If any user signs up on the site through that referral link, they will be matched with the sponsor of that referral link. Normally I can do this using a simple GET method but I want to use cookies so that the referral link will be valid for 30 days. So if a user decides to come back to the site a week later, they will still be matched with that sponsor assuming they haven't deleted their cookies.
For eg.
// referral link
mysite.com/signup?sponsor=john
Here is my cookie code. The issue i am having is that if I go to a different page on the site and come back to the signup page, the cookie gets reset or becomes invalid. Can you tell me what i'm doing wrong? Do I have to use the database to store the cookies or what?
$get_user = $_GET['sponsor'];
$number_of_days = 30 ;
$date_of_expiry = time() + 60 * 60 * 24 * $number_of_days ;
setcookie( "sponsor", $get_user, $date_of_expiry);
if(isset($_COOKIE['sponsor'])) {
echo 'set';
} else {
echo 'not set';
}