Воскресенье, 22.12.2024, 12:34
Меню сайта
Категории раздела
JQuery плагины [59]
JQuery уроки [69]
PHP полезное [24]
PHP уроки [21]
Css [26]
JS [3]
SQL [9]
Css 3 [17]
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Главная » Статьи » PHP уроки

Удаление cookie

Удаление cookie

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

Хотя функция setcookie ( ) может принимать до шести аргументов, факти чески для удаления требуется только один имя cookie. Присвоение перемен ной cookie пустого значения то же самое, что удаление cookie с тем же име нем. Например, если для создания cookie UserName необходимо написать такую строку:

setcookie("UserName","Larry");

то для удаления переменной UserName нужна следующая запись:

setcookie("UserName","");

Ради предосторожности можно также задать срок действия, который уже истек.

setcookie("UserName","",time()60);

Чтобы продемонстрировать эту возможность, добавим кнопку "Reset на страницу cookies.php. Посланные ранее cookie будут стерты, и восстановятся цвета по умолчанию.
Выполнение действия

  1. Откройте последнюю версию файла cookies.php в текстовом редакторе (листинг 12.2).
  2. Добавьте условную инструкцию в уже существующую условную конструк цию if ($BeenSubmitted) (листинг 12.3, строки 38).
  3. if ($Reset) {
    setcookie("BGColor", "", time() "100");
    setcookie ("TextColor", "" , time()"100");
    $BGColor = "WHITE";
    $TextColor = "BLACK";
    } else {

    Если форма отправлена, PHP сначала проверит, истинно ли значение пе ременной $Reset. При положительном результате проверки сценарий удалит существующие cookies, установив пустые значения cookie с теми же имена ми. Сценарий также вернет значения цветов по умолчанию для данной стра ницы.

  4. Закончите условную инструкцию if ($Reset).
  5. setcookie("BGColor", "$NewBGColor", time()+ "1000000");
    setcookie ("TextColor", "$NewTextColor", time()+ "1000000");
    SBGColor = $NewBGColor;
    $TextColor = $NewTextColor;

    Если форма отправлена, а значение переменной $Reset ложно, форма долж на быть обработана так же, как представлено в листинге 12.2.

  6. В HTMLформу добавьте триггерную кнопку, чтобы пользователь мог вер нуть исходные цвета (листинг 12.3, строка 47).
  7. <PxINPUT TYPE=Checkbox NAME=Reset VALUE=TRUE>Check this box to reset —the colors.<P>

    Эта кнопка будет сообщать, возвращать ли исходные значения. Я добавил два тэга параграфа, чтобы HTMLформа выглядела эстетичней.

  8. Сохраните сценарий (листинг 12.3), загрузите его на сервер и протести руйте в браузере (рис. 12.1112.13).
  9. Листинг 12.3 т Для восстановления всех исходных значений посылаются пустые переменные cookie с именами существующих. В HTMLформу добавля ется также триггерная кнопка Reset.

    <?php
      if ($BeenSubmitted) {
    if ($Reeet) {
    setcookie("BGColor", "", time() "100");
    setcookie ("TextColor", "" , time()"100");
    $BGColor = "WHITE";
    $T«ctColor = "BLACK";
    } else {
    setcookie("BGColor", "$NewBGColor", time()+ "1000000"];
    setcookie ("TextColor", "$NewTextColor"., timed + "1000000");v II $BGColor = $NewBGColor;
    $TextColor = $NewTextColor;
    >
    } else {
    if (!$BGColor) {
    $BGColor = "WHITE";
    }
    if (!$TextColor) {
    $TextColor = "BLACK";
    }
    }
    ?>
    <HEAD>
    <TITLE>User Customization</TITLE>
    </HEAD>
    print ("\n");
    ?>
    Currently your page looks like this!
    <FORM ACTION="cookies.php" METHOD=POST>
    Select a new background color:
    <SELECT NAME="NewBGColor">
    <OPTION VALUE=WHITE>WHITE</OPTION>
    <OPTION VALUE=BLACK>BLACK</OPTION>
    <OPTION VALUE=BLUE>BLUE</OPTION>
    <OPTION VALUE=RED>RED</OPTION>
    <OPTION V ALUE=GREEN>GREEN</OPTION>
    </SELECT>
    Select a new text color":
    <SELECT NAME"NewTextColor">"
    <OPTION VALUE=WHITE>WHITE</OPTION>
    <OPTION VALUE=BLACK>BLACK</OPTION>
    <OPTION VALUE=BLUE>BLUE</OPTION>
    <OPTION VALUE=RED>RED</OPTION>
    <OPTION VALUE=GREEN>GREEN</OPTION>
    </SELECT>
    <PxINPUT TYPE=Checkbox NAME=Reset VALDE=TRUE>Check thie box to reset
    the colors.<P>
    <INPUT TYPE=HIDDEN NAME=BeenSubmitted VALUE=TRUE>
    <INPUT TYPE=SUBMIT NAME="SUBMIT" VALUE="Submit!">
    </FORM>
    </BODY>
    </HTML>



Категория: PHP уроки | Добавил: ChronoW (19.07.2013)
Просмотров: 1481 | Теги: Удаление cookie, setcookie | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *: