2015-08-27 20 views
0

Я пытаюсь использовать файлы cookie, но мой самый базовый код ниже не работает. Страница остается пустой и ничего не говорит. Мои файлы cookie включены, и я использую кодировку UTF-8.Мой код cookie не работает

Я пробовал коды с различных сайтов. Они работают нормально, пока я не сделаю даже небольшое изменение (например, используйте другое имя для файла cookie или поместите другой текст в файл cookie). Может кто-нибудь, пожалуйста, скажите мне, что я делаю неправильно?

<?php 
    $username = "Test"; 
    setcookie("username", $username, time()+365*24*60*60, '/', "localhost"); 
    echo $_COOKIE["username"]; 
?> 

<?php 
$cookie_name = "user"; 
$cookie_value = "Alex Porter"; 
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); 
?> 
<html> 
<body> 

<?php 
if(!isset($_COOKIE[$cookie_name])) { 
    echo "Cookie named '" . $cookie_name . "' is not set!"; 
} else { 
    echo "Cookie '" . $cookie_name . "' is set!<br>"; 
    echo "Value is: " . $_COOKIE[$cookie_name]; 
} 
?> 

</body> 
</html> 

ответ

0

суперглобального $_COOKIE не обновляется с помощью функции set_cookie(). Если вы хотите, чтобы ваш файл cookie был немедленно доступен, вам также необходимо вручную установить значение $_COOKIE[$name]. Что-то вроде этого

<?php 
$cookie_name = "user"; 
$cookie_value = "Alex Porter"; 
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); 
$_COOKIE[$cookie_name] = $cookie_value; 
?> 
+0

О, я думаю, что я объяснил свою проблему не так, страница остается пустой даже после нескольких перезагрузок. Я думаю, что файлы cookie не установлены, я также не могу найти их под моими настройками/cookies – Swally

Смежные вопросы