Visszalép

02. Fix COOKIE számláló

Ezen fájlban létrehozandó cookie adat, első belépéskor nincs, mivel ekkor jön létre.

Tesztelésre frissítsük az oldalt, vagy használjuk a következő linkeket.
A linkek közötti lépkedésekkel vagy a frissítéssel győződhetünk meg, a cookie létezésükről.

COOKIE 02. Oldal!

1. COOKIE Teszt értéke = Ez az első látogatása.
2. COOKIE Teszt értéke = Nincs kiértékelhető érték.
3. COOKIE Teszt értéke = Nincs kiértékelhető érték.

4. Fix COOKIE tömb: Lekérdezés 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!

4. Fix COOKIE tömb: Lekérdezés név alapján!
Ha a cookie tömb, tárol adatokat:
A cookie tömben tárolt adatok közül, csak a név szerint lekértek jelennek meg.

Tfixcooki_neve cookie, még nem létezik
Tfixcooki_cime cookie, még nem létezik.
Tfixcooki_temakor cookie, még nem létezik.

Tf_cookinev cookie, még nem létezik.
Tf_cookicim cookie, még nem létezik.
Tf_cookitema cookie, még nem létezik.


 

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.

Vissza a kezdő COOKIE oldalra.

2. Példa: Fix cookie, és a belépést számláló leírása.

<?php
// A session_start() függvény meghívása cookie-hez nem kell, jelenleg azért kell, mert létrehozunk egy SESSION változót is.
session_start();
// Ha nem létezik még COOKIE felhasznalo_02, akkor most létrehozzuk.
// Valamint, létrehozunk egy belépési számlálót, SESSION=fix_c02szamlalo formátumban.
if(!isset($_COOKIE['felhasznalo_02'])) 
		{
		$latogato_neve="Dániel";
		$tartomany =$_SERVER['SERVER_NAME'];
		setcookie("felhasznalo_02", "$latogato_neve", time()+60, "/", "$tartomany", 0);
		$_SESSION['fix_c02szamlalo']=0;
		}
// Ha létezik felhasznalo_02, akkor növeljük a számláló értékét 1-el. 
if(isset($_COOKIE['felhasznalo_02'])) {$_SESSION['fix_c02szamlalo']= $_SESSION['fix_c02szamlalo']+1;}

// Ezen oldalon a cookie adat fix (állandó), azaz, minden belépésnél ugyanazon értéket (adatot) tartalmazza, és a belépési SESSION számláló is, a 
// cookie létezésétől függ.
// Ezért itt, a SESSION  számláló törlésének, nincs értelme.
// De, minden más oldalon ellenőrizzük a cookie létezését, melynek létezése 60 másodpercre van beállítva. 
// A beállított idő elteltével megszűnik, és ha nem létezik, akkor töröljük a SESSION  számlálót is.
	?>
	
<html>
<body>


<?php
// Következik a kiértékelés.
echo'<u>Fix COOKIE 02.Teszt értéke</u> = ';
if(isset($_COOKIE['felhasznalo_02'])) { print "<b>Üdvözlöm kedves ".$_COOKIE['felhasznalo_02'].". Latogatásainak szama: ".$_SESSION['fix_c02szamlalo']."</b>"; }

// Az else ág, első belépésnél érvényesül. Ekkor még nincs kiértékelhető cookie adat.
else{ print "Nincs kiértékelhető érték."; }
	?>
	
</body>
</html>
 

Fenti példában:
COOKIE nevét és értékét, azaz, a belépő nevét (Dániel), vagy tetszőleges szöveget, a program készítője írta be!
Nevek meghatározására nem a legszerencsésebb meghatározás, mert nem tudhatjuk, hogy az adott címről ki lépett be, ha az adott címről többen is beléphetnek.
Ha azt szeretnénk, hogy a cooki ténylegesen a felhasználó valós nevét tartalmazza, készítsünk a belépéshez űrlapot.
Ebben az esetben cooki létrehozása különálló php fájlban, vagy meghatározott feltétellel hozható létre, ugyanazon fájlban.
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.

A létező SESSION változó és értéke, mely jelen esetben a számláló szerepét tölti be, mind addig létezik, még:

  1. Ezen webhelyről felhasználó, ki nem lép.
  2. Vagy a felhasználó, a böngészőjét be nem zárja.
  3. Vagy a program készítője, a SESSION változó élettartamát valamilyen feltételhez köti, és ezt követően törlődik.

Program szempontjából, oldal frissítése is belépésnek minősül, azaz, ekkor is növekszik a belépést számláló, értéke.