Помогни ни да направим Uroci.net по - богат! Добави урок

PHP - част 14 (Cookie)

PHP » PHP
fix3d   трудност:    видян: 9751



Cookies с множество стойности

Както можете да предположите от името, cookies, които могат да съхраняват повече от една стойност, се наричат cookies с множество стойности. Тези cookies могат да са ви много полезни. Ако си спомните от по-рано, броят на cookies, които могат да се съхраняват от Web сървъра на клиентския компютър, може да са максимум 20 ! Затова, вместо да се създават множество cookies, когато потребителя пазарува, и ненужно да се заема диска на компютъра, можете да използвате cookiess с множество стойности.

За да използвате cookies с множество стойности, трябва да зададете, че cookies е масив. Като резултат, всяка информация, която трябва да съхраните в една cookie, ще бъде съхранена като елемент на този масив. Разгледайте следващия код, за да видите, как можете да работите с cookies с множество стойности

<?php
$gmtseconds = time();
id ( isset ($kookie ) )
{
$pagecount = ++ $kookie [0];
setcookie („kookie[0]“, $pagecount, $gmtseconds + 60);
setcookie („kookie“, $kookie, $gmtseconds + 60 );
setcookie („kookie“, $gmtseconds, $gmtseconds + 60 );
echo „Здравей „ . $kookie . „! <br>“;
if ($kookie == 1) {
echo „За първи път посещавате тази страница! <br>“;
}
else {
echo „Посещавали сте тази страница „ . $kookie[0] . „пъти <br>“;
echo „За последен път сте разглеждали тази страница преди“.( $gmtseconds - $kookie). „секунди“;}
exit;
}
else {
if ( isset ( $name )) {
$pagecount = 0 ;
setcookie („kookie[0]“, $pagecount, $gmtseconds + 60);
setcookie („kookie“, $kookie, $gmtseconds + 60 );
setcookie („kookie“, $gmtseconds, $gmtseconds + 60 );
echo „Cookies са създадени. Опреснете страницата, за да видите какво ще стане.“;
exit;
}}
?>


В горния код cookie наречено kookie е с множество стойности. Първият елемент kookie[0] на тази cookie съдържа броя посещения на страницата с помоща на променливата $pagecount. Следващия елемент на тази cookie се нарича kookie и съдържа името на потребителя. Третия елемент, kookie, съдържа времето на последното посещение на страницата.

Когато посетите за първи път страницата, скриптът проверява дали cookie е била създадена. След като посещавате страницата за първи път, cookie няма да е създадена. В резултат на това скриптът ще създаде cookie ( kookie[0] ) и ще запише името ви в cookie kookie и времето на посещението ви в kookie. След това ще се изведе съобщението Cookieса създадени ! Опреснете страницата за да видите какво ще стане.

След като опресните страницата скриптът се изпълнява отново. Броячът се увеличава с помоща на реда $pagecount = ++ $kookie [0]; и новите стойности се записват в масив. Тъй като сега стойността на променливата $pagecount = 1, ще се изведе съобщението За първи път посещавате тази страница.

В случай че сте посетили страницата няколко пъти, ще се изведе съобщението Посещавате тази страница < число > пъти., където < число > е стойността съхранена в kookie[0] . Показва се и друго съобщение, За полседен път сте разгледали тази страница преди < време > секунди. Тук < секунди > е стойността, съхранена в kookie.


Съответния HTML код, който извиква скрипта cookie2.php, е следният:

<html>
<body>
<form name=“nameform“ method=“Get“ action=“cookie2.php“>
<b>Име</b>
<input type=“text“ name=“name“>
<input type=“submit“ name=“Submit“ value=“ Влез „>
</body>
</html>


Горния HTML код генерира една много проста HTML форма, която съдържа етикета Име, текстово поле за въвеждане и бутон Влез. Когато въведете име в полето Име и натиснете бутона Влез, се изпълнява скриптът cookie2.php. Този скрипт, както обясних по-рано, обработва информацията от формата

Остава една подробност при работата с cookies - изтриването на cookies. В следващата секция ще видите как можете да направите това.


Изтриване на cookies

След като cookie е изиграла ролята си и вече не се нуждаете от нея, можете да я изтриете. PHP не предоставя отделна функция за тази цел. Извикайте функцията setcookie само с името на cookie, за да я изтриете. Синтаксисът за изтриване е:

setcookie ( „име_на_cookie“ );

Така, че ако искате да изтрието cookie с име kookie, можете да я изтриете чрез следния ред:

setcookie ( „kookie“ );

Едно много важно нещо за изтриването на cookies в PHP, което трябва да знаете и да помните. Ако искате да създадете cookie с име, което вече съществува, първо трябва да я създадете с новата стойност и едва тогава да изтриете старата cookie. Това означава, че ако трябва да създадете cookie с име kookie, която вече съществува, първо ще трябва да напишете следни ред

setcookie („kookie“, „ New cookie“);

Едва тогава след като сте променили стойността на cookie, можете да изтриете cookie чрез:

setcookie („kookie“);


източник на урока: http://www4u.search.bg


Страници: «1 2 3 4

Регистрирайте се, за да добавите коментар


Калдейта ЕООД - © 2003-2010. Всички права запазени.
Препоръчваме: Национален Бизнес | Bomba.bg | IT Новини | Диплома.бг | TRAVEL туризъм | Реферати | AmAm.bg | Иде.ли | Курсови работи | Фото Форум | Spodeli.net | Фото-Култ | Atol.bg | Elmaz.com | MobileBulgaria.com | Казанлък.Com