Sesije i kolačići

Da ne bi došlo do zabune, s obzirom da ste na sajtu koji se bavi programiranjem, ne radi se ni o kakvim kolačićima kao poslasticama 😀

U pitanju su web tehnologije kojse se zovu sesije i kolačići ili na engleskom – sessions and cookies.

Sesija stvara privremeni fajl unutar foldera na serveru gde se čuvaju podaci koji će biti dostupni svim stranicama tog sajta kako bi ih upotrebljavale za prikazivanje podataka. Sesija traje onoliko dugo koliko je posetilac sajta prisutan na našem sajtu. Čim ode sa njega, ugasi tab ili pretraživač, server očisti taj privremeni fajl, obično nakon pola sata i sesija je završena.

Kolačići su takođe tekstualni fajlovi, samo što se za razliku od sesije čuvaju na klijentovom kompjuteru, unutar pretraživača posetioca našeg sajta. Sačuvani podaci unutar ovih kolačića obično traju duže i čekaju da se posetilac ponovo vrati na taj sajt kako bi se aktivirali i pomogli da se ostvari lepše korisničko iskustvo sa tim sajtom.

Sesija se namešta unutar globalne superpromenljive i nameštanje sesije izgleda ovako: $_SESSION["MojaSesija"] = "Započela je sesija";
Sada smo u stanju da na nekoj drugoj stranici čije ponašanje i izgled kontroliše neki drugi fajl pristupimo vrednostima iz sesije na sledeći način: $sadrzaj = $_SESSION["MojaSesija"];
Vrednost sesije koju smo izvulkli prikazujemo korisniku kroz echo funkciju echo $sadrzaj

Sa kolačićima je slična situacija:
$name='KolacicuMoj';
$value='problem je tvoj sto si mi tako sladak';
$expiration=time() + (60 * 60 * 24 * 365); // podesavanje vremena koliko će dugo klijentov pretraživač čuvati

//u svojoj memoriji ove vrednosti
setcookie($name,$value,$expiration);

A onda sledeći put kada korisnik dodje na stranicu, može ga pozdraviti poruka koju smo sačuvali unutar kolačića:
if(isset($_COOKIE["KolacicuMoj"])){
$kolacic = $_COOKIE["KolacicuMoj"];
echo $kolacic;
} else {
$kolacic = "";
}

Kao što vidite, kolačić je takođe u PHP jeziku globalna superpromenljiva.