Visszalép

04. COOKIE array tömb, fix adatokkal.

COOKIE 04. Oldal! Ezen fájlban létrehozandó cookie-k adat, első belépéskor nincs, mivel ekkor jön létre .
Tesztelésre, használjuk a következő linkeket, így győződhetünk meg, létezésükről.



Nézzük meg, milyen COOKIE létezik jelenleg.
COOKIE élettartama, létrejötte után = 60 másodpercre van beállítva.

1. COOKIE 01. Teszt értéke:
Ez az első látogatása.

2. COOKIE 02. Teszt értéke:
Nincs kiértékelhető érték.

3. COOKIE 03. Teszt értéke:
Nincs kiértékelhető érték.

4. A COOKIE 04. tömb: Lekérdezés név alapján!
COOKIE tömb, még nem jött létre!
Létrehozásához lépjünk ki, majd be, ezen oldalra!


-- Élettartamuk, létrejöttük után = 10; 15; 20; másodpercre van beállítva. --

Minden létező COOKIE tömb Lekérdezése, foreach ciklussal:
Minden jelenleg létező, és cookie tömben tárolt adat, megjelenik, még akkor is, ha nem ezen fájban lettek létrehozva!
Figyelj: A teszt COOKIE-k, 60 másodpercre vannak beállítva. Kiértékelhető adatokhoz, kattints a Start vagy a 4.COOKIE linkre, és térj vissza.



 

Emlékeztető:
COOKIE a meghatározott ideig van életben, ezt követően megsemmisül.
Itt a teszteknél előfordulhat, hogy belépünk egy oldalra és a COOKIE létrejön, az adott oldalon hosszabb ideig tartózkodunk, mint a COOKIE-nak meghatározott idő intervallum.
Ekkor, hiába lépünk át másik oldalra, vagy frissítjük az oldalt, nem lesz kiértékelhető COOKIE adat.

A COOKIE neveknek, mindenki tetszésének megfelelő ékezet nélküli elnevezést adhat.
COOKIE tömböknél, az időbélyeg intervallumot célszerű egységesre beállítani, jelenleg a teszt végett eltérőek. (10; 15; 20;)
Oldal frissítésével, vagy másik oldalra történő belépéssel, tesztelhetjük a létezésüket.

COOKIE Array tömb létrehozása:
Fájl kiterjesztése: PHP

<?php
// 1.példa. 
// Meghatározzuk a cookie elemk neveit.
$c01="Tfixcooki_neve";
$c02="Tfixcooki_cime";
$c03="Tfixcooki_temakor";
// Meghatározzuk a cookie elemkben tárolandó adatokat.
$c01_adat="Szilvia";
$c02_adat="Cookie út 111";
$c03_adat="Sport";

$tartomany =$_SERVER['SERVER_NAME'];

// A setcookie() függvényen kívül határoztuk meg, a cookie elemk neveit, és a cookie elemkben tárolandó adatokat.
	setcookie("cookie[$c01]","$c01_adat", time()+20, "/", "$tartomany", 0);
	setcookie("cookie[$c02]","$c02_adat", time()+15, "/", "$tartomany", 0);
	setcookie("cookie[$c03]","$c03_adat", time()+10, "/", "$tartomany", 0);

// 2.példa. 
// Közvetlen a setcookie() függvényben határozzuk meg, a cookie elemk neveit, és a cookie elemkben tárolandó adatokat.
	setcookie("cookie[Tf_cookinev]","Sebastian", time()+20, "/", "$tartomany", 0);
	setcookie("cookie[Tf_cookicim]","London Cookie út 113", time()+15, "/", "$tartomany", 0);
	setcookie("cookie[Tf_cookitema]","Matematika", time()+10, "/", "$tartomany", 0);
// Fenti meghatározások előtt, nem lehet <html> kimenet.

// Első teszt alkalmával: Oldalról ki kell lépni, majd újból belépni.
// Írja ki a cookie-kat, az oldal újbóli betöltése után.
// Kiíratást elvégezhetnénk itt is. Jelenleg a <html> szakaszban történik a kiíratás.
?>

<html>
<body>

<?php
echo'<table><tr><td>';
echo'<p><u><b>4. COOKIE tömb:</u> Lekérdezés foreach ciklussal!</b><br />
Minden jelenleg létező, és cookie tömben tárolt adat, megjelenik.<br /><br />';
	if (isset($_COOKIE["cookie"]))
	{
	foreach ($_COOKIE["cookie"] as $neve => $value)
		{
		echo "$neve = $value "; echo'<br />';
		}
	}
echo'</p></td>';
// -------------------------------------------------------------------------------------------------------------
echo'<td>';
echo'<p><u><b>4. COOKIE tömb:</u> Lekérdezés név alapján!</b><br />
A cookie tömben tárolt adatok közül, csak a név szerint lekértek jelennek meg.<br />';
// 1. Példa eredményei.
// COOKIE változók lekérdezése előtt, meg kell győződni azok létezéséről.
if (isset($_COOKIE["cookie"]["$c01"]))   { echo'<br />Tfixcooki_neve = '.$_COOKIE["cookie"]["$c01"]; }
if (isset($_COOKIE["cookie"]["$c02"]))   { echo'<br />Tfixcooki_cime = '.$_COOKIE["cookie"]["$c02"]; }
if (isset($_COOKIE["cookie"]["$c03"]))   { echo'<br />Tfixcooki_temakor = '.$_COOKIE["cookie"]["$c03"]; }
		
// 2. Példa eredményei.
if (isset($_COOKIE["cookie"]["Tf_cookinev"]))  { echo'<br /><br />Tf_cookinev = '.$_COOKIE["cookie"]["Tf_cookinev"]; }
if (isset($_COOKIE["cookie"]["Tf_cookicim"]))  { echo'<br />Tf_cookicim= '.$_COOKIE["cookie"]["Tf_cookicim"]; }
if (isset($_COOKIE["cookie"]["Tf_cookitema"])) { echo'<br />Tf_cookitema = '.$_COOKIE["cookie"]["Tf_cookitema"]; }
echo'</p></td></tr></table>'; 
?>

</body>
</html>

 

Fenti példában, cookie létrehozására és nevük alapján történő lekérdezédére, kettő példát láthatunk.
1. Példában:

2. Példában:


Összegezve:

  1. Ha a lekérdezést foreach ciklussal végezzük, minden jelenleg létező, és cookie tömbben tárolt adat megjelenik, akár milyen formátumban hoztuk létre, és még akkor is, ha nem a lekérdezendő fájlban lettek létrehozva!
  2. Amennyiben az adatokat cookie név alapján kérdezzük le, azon fájlban, melyben létrehoztuk őket lekérdezési probléma nincs, akármilyen formátumban jöttek létre. Másik fájlban akarjuk cookie név alapján az adatokat lekérdezni, akkor nem mindegy, hogy hogyan lettek létrehozva. Ha létrehozásukkor az adatokat nem közvetlen a setcookie() függvényben írtuk meg, hanem előzőleg változóhoz rendeltük őket, akkor e változókat a lekérdezendő oldalon is, ugyanúgy kell elhelyezni, mint a cookie létrehozáskor.

Vissza a COOKIE kezdő oldalra.

Megjegyzés:
Ha azt szeretnénk, hogy a cooki array tömb, ténylegesen a felhasználóhoz tartozó valós adatokat tartalmazza, készítsünk a belépéshez űrlapot.
Mivel egy és ugyanazt a számítógépet, több személy is használhatja, így nem tudhatjuk, hogy melyik felhasználó lépett be az oldalra.
Ha biztonsági oldalakról van szó, használjunk adatbázist, ezzel a belépésnél meggyőződhetünk arról, hogy jogos a belépés engedélyezése vagy sem.
Ha jogos a belépés, akkor megkapja a szükséges COOKIE SÜTI vagy SESSION adatot, mellyel további oldalakat nézhet meg, vagy oldalakon dolgozhat.