Файлы cookie часто используются для идентификации пользователей.
Файлы cookie часто используются для идентификации пользователей. Файл cookie — это небольшой файл, который сервер оставляет на компьютере пользователя. Каждый раз, когда один и тот же компьютер запрашивает страницу через браузер, этот компьютер отправляет файл cookie. С помощью PHP вы можете создавать и получать значения файлов cookie.
Функция setcookie() используется для установки файлов cookie.
Примечание. Функцию setcookie() необходимо размещать перед тегом <html>.
setcookie(имя, значение, срок действия, путь, домен);
В следующем примере мы создадим файл cookie с именем «user» и присвоим ему значение «codercto». Мы также указываем, что срок действия этого файла cookie истекает через один час:
<?phpsetcookie("user", "codercto", time()+3600);?><html>.....
Примечание. При отправке файла cookie значение файла cookie автоматически кодируется в URL-адресе и автоматически декодируется при получении. (Чтобы предотвратить кодирование URL, используйте вместо этого setrawcookie().)
Существует еще один способ установить срок действия файлов cookie. Это может быть проще, чем использовать секунды.
<?php$expire=time()+60*60*24*30;setcookie("user", "codercto", $expire);?><html>.....
В приведенном выше примере срок действия установлен на один месяц ( 60 секунд * 60 минут * 24 часа * 30 дней ).
Переменная PHP $_COOKIE используется для получения значения файла cookie.
В следующем примере мы получаем значение файла cookie с именем «user» и отображаем его на странице:
<?php// Выводим значение файла cookie echo $_COOKIE["user"];// Просмотреть все файлы cookie print_r($_COOKIE);?>
В следующем примере мы используем функцию isset(), чтобы подтвердить, был ли установлен файл cookie:
<html><head><meta charset="utf-8"><title>Руководство по программированию (codercto.com)</title></head><body><?phpif (isset($_COOKIE["user" ] )) echo "Добро пожаловать" . $_COOKIE["user"] "!<br>";else echo "Обычный посетитель!<br>";?></body></html>
При удалении файла cookie вам следует изменить дату истечения срока действия на определенный момент времени в прошлом.
Удаленный экземпляр:
<?php//Установить срок действия cookie на последний час setcookie("user", "", time()-3600);?>
Если вашему приложению приходится работать с браузерами, которые не поддерживают файлы cookie, вам придется использовать другие методы для передачи информации между страницами вашего приложения. Один из способов — передать данные через форму (формы и пользовательский ввод описаны в предыдущих главах этого руководства).
Следующая форма передает введенные пользователем данные в файл «welcome.php», когда пользователь нажимает кнопку «Отправить»:
<html><head><meta charset="utf-8"><title>Руководство по программированию (codercto.com)</title></head><body><form action="welcome.php" Method=" post ">Имя: <input type="text" name="name">Возраст: <input type="text" name="age"><input type="submit"></form></body>< / html>
Получите значение из файла «welcome.php» следующим образом:
<html><head><meta charset="utf-8"><title>Руководство по программированию (codercto.com)</title></head><body>Добро пожаловать<?php echo $_POST["name"] ; ?>.<br>Вам <?php echo $_POST["age"] ?> лет. </body></html>