$NameSite?>

Добрый день. Подскажите пожалуйста почему unset действует только в начале кода. Если написать в конце, счетчик будет продолжать работать. И почему кстати при использовании unset, cookie остается а не удаляется.

//unset($_COOKIE["count"]); $count = (isset($_COOKIE["count"])) ? $_COOKIE["count"] : 0; $count++; setcookie("count", $count); echo $count; unset($_COOKIE["count"]);

Почему Cookie в куки заносится значение, а в другом файле Cookie пуста?
Здравствуйте подскажите что я не так делаю все вроде по примерам да ошибок как токавых нет.. но не.

cookie
1-ая Страница: Форма загрузки изображений на сайт. Затем когда пользователь загрузил изображение.

Cookie
Всем привет) С помощью кук передаю код на новую вкладку и преобразую в pdf. Все отлично.

Cookie
Сломал всю голову. Не понимаю почему не задаются cookie. Вот код: <html> <head> <meta.

Источник

Не удаляются куки

я так предполагал, что при клике по ссылке кука должна удалится и, соответственно, должна вывестись строка «cookie was deleted», но кука почему то не удаляется, и в результате выводится ее значение.

И, если можно, еще два вопроса:
1. При удалении куки функцией setcookie данные куки удаляются только из браузера, или еще из массива $_COOKIE?

2. Кука не записывается в $_REQUEST, после установки я пытаюсь вывести куку:

но браузер выводит: Notice: Undefined index: x in C:\apache\localhost\www\test\index.php on line 4. При этом директивы register_globals = on и variables_order = «GPCS». Версия php 5.3.5

Куки не удаляются
Привет, у меня не удаляются куки таким методом: <?php setcookie("ID", null, -1);.

Куки не удаляются
Добрый день. Пишу корзину для интернет магазина на куках. Куки хранятся в таком виде: .

Не удаляются куки
почему, после того, как создать куку и если нажать на выход, то кука не удаляется? <?php.

куки не удаляются(
Доброе время суток всем Подскажите пожалуйста, почему у меня не удаляются куки. что я делаю не.

ЦитатаСообщение от LiV Посмотреть сообщение

setcookie("x", ""); if(($_COOKIE['x']) == 'deleted')

Во-первых, Вы присваиваете переменной значение «» и проверяете, равно ли это «deleted». Где Вы вообще взяли такое?

ЦитатаСообщение от LiV Посмотреть сообщение

я так предполагал, что при клике по ссылке кука должна удалится и, соответственно, должна вывестись строка «cookie was deleted»,

Во-вторых, куки передаются с заголовками браузеру. Браузер получает эти куки, записывает их себе, и потом при последующих запросах опять передает сайту. Соответственно чтобы увидеть результаты работы setcookie() страницу нужно как минимум перезагрузить.

ЦитатаСообщение от LiV Посмотреть сообщение

При удалении куки функцией setcookie данные куки удаляются только из браузера, или еще из массива $_COOKIE?

ЦитатаСообщение от LiV Посмотреть сообщение

ЦитатаСообщение от pav1uxa Посмотреть сообщение

Вы присваиваете переменной значение «» и проверяете, равно ли это «deleted». Где Вы вообще взяли такое?

Источник

Поэтому я попробовал несколько других «решений» своей проблемы (как на этом сайте, так и на других) и не могу найти решение, которое работает для меня.

Я пытаюсь установить cookie для входа в систему моего пользователя, а затем при выходе удалить этот cookie. Вот мой код

list ($check, $data) = check_login($dbc, $_POST['Username'], $_POST['Password']); if ($check) < setcookie('Username', $data['Username'], time() + 60*60*24*90); header('Location: RedirectPage.php'); 

Который проверяет, что имя пользователя и пароль были введены в форму входа в систему (и приняты). Если это так, файл cookie «Имя пользователя» устанавливается с именем пользователя, полученным из базы данных, и временем, равным 90 дням, и затем пользователь перенаправляется ,

Эта часть работает нормально, она регистрирует пользователя, как и следовало ожидать.

header('Refresh: 0;'); setcookie('Username', '', time() - 60*60*24*90); unset($_COOKIE['Username']); require ('RedirectPage.php'); redirect_user(); 

Я удаляю cookie таким же образом, как он был установлен, как и ожидалось, удаляя любые данные и устанавливая время в отрицательное значение, а затем для хорошей меры я запускаю неустановленный cookie, чтобы убедиться, что он исчез.

За исключением того, что это не работает. setcookie (для удаления) ничего не делает, а unset cookie работает только на странице после того, как он был запущен (в данном случае index.php), и как только я нажимаю на другую страницу или обновляю страницу, которую он «забывает» что cookie был удален.

Теперь перейдем к элементу проверки Chrome, чтобы проверить куки, которые я получаю.

Username, "Value" (the withdrawn username), r3gamers.com (domain), / (path), 2015-02-03T13:45:00 (Expires/MaxAge), 19 (Size) and HTTP and Secure are both set as empty. 

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

Есть идеи? Насколько я знаю, я делаю все, что должно быть сделано.

РЕДАКТИРОВАТЬ:
Я также хотел бы отметить, что при тестировании на локальном хосте, в автономном режиме через netbeans, эта функция работает. Однако, когда я загружаю страницы в Godaddy для моего сайта, они перестают работать должным образом.

Решение

Я нашел ответ. Это тоже глупый ответ. Вот файл полного кода, который я использовал для выхода из системы.

Проблема, которую я не могу показать здесь, заключалась в том, что у открывающего тега php был один разрыв строки, то есть он начинался со строки 2. Почему изначально так было, я не знаю, но эта маленькая ошибка означала что это работает на localhost и не работает на godaddy. Как расстраивает. По крайней мере, я исправил проблему сейчас.

Для будущего использования, для тех, кто застрял с той же проблемой, очевидно, что godaddy (или большинство хостинговых сайтов) требуют, чтобы любое добавление, редактирование или удаление файлов cookie происходило со строки 1 и далее, поэтому тег php, который включает файл cookie, должен находиться в строке 1, нет HTML-код может предшествовать этому тегу php, или любые разрывы строк, тег php должен начинаться со строки 1.

Другие решения

Вы не устанавливаете путь к вашему куки, я предполагаю, что вы хотите, чтобы он был для всего сайта, поэтому вы должны установить путь к ‘/’:

setcookie('Username', $data['Username'], time() + 60*60*24*90, '/');

А затем, когда отключите его, попробуйте использовать 1 вместо time() - 60*60*24*90 (также по-прежнему указывается путь), в противном случае время истечения срока действия куки может варьироваться в зависимости от часов компьютера пользователя:

Я думаю, что ваша проблема на самом деле заключается в том, что путь не установлен: http://php.net/manual/en/function.setcookie.php

Если установлено значение «/», файл cookie будет доступен во всем домене. Если установлено значение «/ foo /», файл cookie будет доступен только в каталоге / foo / и во всех его подкаталогах, таких как / foo / bar / домена. Значением по умолчанию является текущий каталог, в котором устанавливается cookie.

Дело в том, что если вы находитесь в /logout/doit.php и пытаетесь установить время истечения срока действия cookie на отрицательное значение, оно создаст новый файл cookie с путем ‘/ logout /’ и установит время его истечения. (Вместо того, чтобы устанавливать срок действия файла cookie вашего сайта)

Источник

Форум PHP программистов ► PHP практикум ► PHP ?

Сообщений: 145
Пользователь №: 30053
На форуме:
Карма:

Не пью :
14 лет, 3 месяца, 7 дней

Доброе время суток всем, я знаю как вы все меня ненавидете за мои тупые вопросы)) 🙂
Подскажите пожалуйста, почему у меня не удаляются куки . что я делаю не так?
index. php

php
include "config.php"; //подключаем базу
?>
php

if($_SESSION['email'] && $_SESSION['pass'])//проверяем сессию
include_once('login.php');
exit;
>
if($_COOKIE['email'] || $_COOKIE['password'] )//проверяем куки если есть то
//записываем в сессию

$_SESSION['email']=$_COOKIE['email'];
$_SESSION['pass']=$_COOKIE['password'];
include_once('login.php');
exit;
>
?>//если ни одно из условий не прошло то загружаем страницу

 html>


http-equiv="Content-Type" content="text/html; charset=windows-1251" />

type='text/css' rel='stylesheet' href='css/style.css'/>
type="text/javascript" src="js/java.js">

action="login.php" method="post" name="r1">
class="zag">Вход на сайт
cellpadding="0" cellspacing="0">


Email:
type="text" name="UEmail" class="text" />

Пароль:
type="password" name="UPass" class="text" />

colspan="2"> type="checkbox" name="cookie" value="1" class="check"/> class="z1">Запомнить?

colspan="2" align="center"> type="submit" value="Вход" class="bottom" id="vhBott" />

colspan="2" align="center"> href="reg.php" class="s1">Регистрация

php
include "config.php";//база
?>
php

$UEmail = trim($_POST['UEmail']);//проверка мыла на пробелы
$UPass = md5($_POST['UPass']);//шифруем пароль

if($_SESSION['email'] && $_SESSION['pass'])//если есть ссесия то загружаем с неё данные в переменные
$UEmail=$_SESSION['email'];
$UPass=$_SESSION['pass'];
>
if(!$_SESSION['email'] || !$_SESSION['pass'])//если сесии нет ты отправляем назад
header('Location: index.php');
>

if($UEmail == '' || $UPass == '')//Если не заплнены поля
$reg = 2;
header('Location: index.php?reg='.$reg);
exit;
>
$_SESSION['email']=$UEmail;//запись мыла в сесию
$_SESSION['pass']=$UPass;//запись пароля в сесию

if($_POST['cookie']==1)//если стаит чек бокс то запоминаем куки
setcookie("email",$UEmail,time()+3600*24*7);
setcookie("password",$UPass,time()+3600*24*7);
>
 href="index.php?exit=del">Выход //выходим
php
if($_GET['exit']==del)//ну тут всё понятно
if($_COOKIE['email'] || $_COOKIE['password'] )//вытираем куки если они есть
setcookie("email","", time()-3600);
setcookie("password","", time()-3600);
>
session_destroy();//выходим с сессии

echo "
setTimeout(
\"location.replace ('index.php')\", 1000);//отпровляем назад
//--> "
;
>;
?>

Проблема в том что при нажатии выход в файле login. php не стирает куки в чем тут проблема, подскажите плыз?(

Источник

Читайте также:  Html span text width
Оцените статью