2016-06-27 3 views
0

Я начинающий на PHP, и я не могу найти ответ на свой вопрос о сеансах или куках после обновления страницы.Сессия PHP или Cookie после обновления страницы

Я хочу сохранить логическое значение для переменной в PHP - true, если это первый груз страницы и false, если это не так (например, это загрузка после обновления или что-то в этом роде).

Можете ли вы мне помочь? Спасибо.


$forAnimation; 

if(isset($_COOKIE["pollChart"])){ 
    $forAnimation = false; 
} else { 
    setcookie("pollChart"); 
    $forAnimation = true; 
} 
+1

Я сожалею, я обновил фрагмент кода, где я попытался с помощью печенья. – iWannaAskThis

+0

Как показано в руководстве (http://php.net/manual/en/function.setcookie.php), у вас должен быть ключ и значение на 'setcookie'. '$ forAnimation = true; setcookie ("pollChart", $ forAnimation); 'Теперь у вас должно быть' $ _COOKIE ['pollChart'] 'установлено как' true'. – Rasclatt

+0

Он по-прежнему возвращает одинаковое значение как для первой загрузки, так и после обновления страницы. – iWannaAskThis

ответ

0

Куки довольно прямо вперед, вы просто установить ключ, значение, время истечения и т.д. Вы можете посмотреть, как это работает в руководстве (http://php.net/manual/en/function.setcookie.php):

// If the cookie is not set 
if(!isset($_COOKIE["pollChart"])){ 
    // Set cookie key and string value 
    setcookie("pollChart",json_encode(array('set'=>false))); 
// If set already, change value 
} else { 
    // Decode array 
    $dec = json_decode($_COOKIE['pollChart'],true); 
    // If the set value is true 
    if($dec['set']) 
     // Expire the cookie 
     setcookie("pollChart",'',(time()-3600)); 
    // If set to false turn it to true 
    else 
     setcookie("pollChart",json_encode(array('set'=>true))); 
} 

// Get the contents of the cookies set 
print_r($_COOKIE); 

дает вам при первой загрузке:

Array 
(
    [PHPSESSID] => 4c4871ac239cec6fa2f3f43bcbed6d81 
    [pollChart] => {"set":false} 
) 

Вторая нагрузка:

Array 
(
    [PHPSESSID] => 4c4871ac239cec6fa2f3f43bcbed6d81 
    [pollChart] => {"set":true} 
) 

Последняя загрузка:

Array 
(
    [PHPSESSID] => 4c4871ac239cec6fa2f3f43bcbed6d81 
) 
Смежные вопросы