Не сте регистриран! Регистрирайте се БЕЗПЛАТНО, за да използвате услугите на сайта!

   Рубрики
 
 
 
 

 Форуми
» SEO и оптимизация
» Всичко за PHP и Perl
» Всичко за C, C++ и .NET
» Всичко за Java и JSP
» Всичко за SQL и MySQL
» Всичко за XHTML и CSS
» Презентация на сайтове
 Как да използваме cookie в PHP?
  1. Въведение
  2. Използване
     
Автор  @Djimbo (01.05.2004 08:30)  съобщение до автора
Погледнат  2853 пъти  добави към любими
Оценка  добави коментар
Гласове  6  изпрати на приятел
Коментари  (1)  абонирай се за PHP
    Страница 2 / 2

 



За да променим съдържанието на cookie в PHP е необходимо просто да изпратим ново със същото име и същите други атрибути, ако сме посочили такива, но с различно съдържание. Затова ако посетителят иска да смени въведеното от него име, го изпратихме отново в index.php, където ще може да повтори процедурата.

В PHP прочитането на cookie е безкрайно упростено. Тя е винаги достъпна за използване, без да е необходимо да пишете какъвто и да било предварителен код. При зареждането на PHP скрипта се създават автоматично променливи за всички "бисквитки", които сървърът получи. Името на променливата взема името на съответното cookie, а в стойността й ще открием съдържанието му. И ако основното съдържание на сайта се намира във файл content.php, в него можем да запишем :

CODE
1
2
3
4
<?
echo "Потребител: $user";
........
?>

След това, знаейки името, можем да направим проверка в база данни за някакви настройки, записани по-рано от посетителя или да извършим други действия с информацията в $user.
Нека сега добавим още един аргумент за "бисквитката" си, например да укажем, че тя ще е валидна в следващия един час. За целта можем да използваме вградената в PHP функция time(), от която ще вземем текущото време, след което ще прибавим 3 600 секунди:

CODE
1
<? setcookie ("user", $username, time() + 3600); ?>

При това положение, за да изтрием "бисквитката" можем да напишем:

CODE
1
<? setcookie ("user", "", time() - 3600); ?>

Нека сега разширим обхвата на дейност, например до Уеб страници, намиращи се в рамките на която и да е директория на www.mydomain.com/ Тъй като cookie файла бе записан от директория "site" в рамките на домейна, при досегашния начин на боравене с нея тя ще е достъпна само до PHP скриптовете в тази поддиректория. Но може да се наложи да го ползваме например в http://www.domain.com/more. За целта трябва да укажем, че съответното cookie е валидно за всички поддиректории на главната директория на домейна, която се обозначава с наклонена черта - "/". Тогава записът би изглеждал така:

CODE
1
<? setcookie ("user", $username, time() + 3600, "/"); ?>

По този начин във всеки PHP скрипт, намиращ се в която и да е поддиректория на http://www.domain.com ще можем да прочетем стойността на променливата $user, която ще ни дава въведеното потребителско име. Но какво ще стане ако посетителят отиде на http://domain.com/site/content.php? За момента бисквитката ни е валидна само за www субдомейна, но не и за останалите. За да решим проблема трябва да използваме атрибута domain и да я изпратим така:

CODE
1
<? setcookie ("user", $username, time() + 3600, "/", ".domain.com"); ?>

Обърнете внимание на точката преди името на домейна. По този начин указваме, че желаем да получаваме "user" в който и да е негов субдомейн. За да изтрием това cookie трябва да напишем :

CODE
1
<? setcookie ("user", "", time() - 3600, "/", ".domain.com"); ?>

Това са основните неща, които трябва да знаете, за да използвате "бисквитки" в сайтовете си.



 << Предишна страница  


Ключови думи: PHP cookie първи стъпки бисквитки


Още уроци от тази рубрика


 
  • Подобни теми от myLinks
 

 1 посетител чете този урок (0 потребители и 1 гост)  
Активни потребители: ---
   
  

Еmail  
 

А как да взимам информация от кукитата.
Примерно phpBB форума записва във куки когато съм се логнал.
И моята цел е примерно да взема именно тази инф дали съм се логнал във форума и с какво име.

  jaredharet на 07.04.2006 22:03

 

 
  • Интересно от Софтуер
 



IT-PLACE.NET © 2004 - 2008