Cookie устанавливается дважды (дублируется) - PullRequest
2 голосов
/ 16 апреля 2010

Я новичок в cookie-файлах, и я пытаюсь установить cookie-файл, где хранить реферал (ссылка на организацию).
Но когда я попробую эту функцию:

function do_it_cookie() {

// Check if cookie exists
if (isset($_COOKIE['ref'])) {

    // It dose exist, do nothing or anything... 

    } else {
        setcookie ('ref', $_SERVER['HTTP_REFERER'], time() + 60, '/');
        header ("Location: http://www.nyttforetag.com/mind-your-own-business/");
    }
}

Я хочу хранить куки на компьютере пользователя в течение 30 дней, если при возврате я хочу знать исходный URL судейства.

Но когда я использую это и, скажем, я перехожу на другую страницу моего сайта, а затем возвращаюсь на домашнюю страницу, он устанавливает новый файл cookie с тем же именем и ссылкой на предыдущую страницу.

Есть ли, чтобы избежать этого?

Ответы [ 2 ]

1 голос
/ 16 апреля 2010

Теперь вы храните печенье в течение 60 секунд.

time()+60*60*24*30 //this makes store it for 30 days.

из php.net expire -

Время истечения срока действия куки. Это Unix timestamp, так что в количестве секунды с эпохи. В других слова, вы, скорее всего, установите это с функцией времени () плюс количество секунд, прежде чем вы хотите истекать. Или вы можете использовать mktime (). время () + 60 * 60 * 24 * 30 установит куки истечь через 30 дней. Если установлено в 0, или опущено, срок действия файла cookie истекает конец сеанса (когда браузер закрывает) * +1010 *

0 голосов
/ 16 апреля 2010

Первый пункт, пожалуйста, установите имя куки уникально для каждого дня. Пожалуйста, добавьте имя куки с датой. Установите cookie только в домашних или первых страницах. В течение 30 дней вы можете использовать расчет как время () + 60 * 60 * 24 * 30.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...