Jūs esate sename manualai.lt puslapyje.
Naujasis puslapis yra v2.manualai.lt

forumas.manualai.lt

kodai.manualai.lt

dizainas.manualai.lt

idomu.manualai.lt

top

Sekite mus Facebook'e

Sekite mus Facebook'e

Vartotojo meniu

Forumo naujausi


Sesijos PDF Spausdinti
Autorius: Primatas   

PHP sesijos kintamieji yra skirti tam, kad saugotų informaciją apie vartotoją. Dažniausiai naudojami, kai reikia padaryti svetainėje prisijungimo modulį. Sesijos kintamieji yra pasiekiami visuose dokumentuose, kuriuose ji yra pradėta.

PHP sesijos kintamieji

Kai dirbate su kokia nors programa, jūs ją atidarote, darote kažkokius pakeitimus ir uždarote. Visi šie veiksmai vyksta jūsų sesijos metu. Kai dirbate su kokia nors programa, kompiuteris visada žino kas jūs toks, kada atidarėte programą, ką su ja veikiate ir kada ją uždarėte. Internete yra viena problema: web serveris nežino kas jūs, nes HTTP adresas yra dinamiškas.

PHP sesijos išsprenžia šią problemą, nes ji leidžia saugoti informaciją apie vartotoją serveryje. Deja, sesijos kintamuosiuose esanti informacija yra laikina ir bus ištrinta po to, kai vartotojas išeis iš svetainės. Jei norite informaciją saugoti ilgesnį laiką, siūlau naudoti duomenų bazes (pvz.: MySql)

Sesijos veikia tokiu principu: kiekvienas lankytojas gauna savo unikalų ID ir visi kintamieji yra saugomi pagal tą ID serveryje. ID yra saugomas arba sausainėlyje arba URL adrese. Norint užtikrinti didesni saugumą, reiktų saugoti ne tik ID, bet taip pat tikrinti ir kitus parametrus - ip adresą, naršyklę ir kt.

Pradedam PHP sesiją

Prieš naudojant PHP sesijų kintamuosius, jūs turite ją pradėti kiekviename dokumente, kuriame naudosite sesijų kintamuosius.

Pastaba: session_start() funkcija turi būti PRIEŠ betkokį HTML kodą.:

<?php session_start(); ?>

<html>
<body>
<p>Sveikas pasauli!</p>
</body>
</html>

Šis kodas užregistruos vartotojo sesiją serveryje ir suteiks jam unikalų ID. Dabar jau galite naudoti sesijos kintamuosius.

Sesijos kintamieji

Teisingiausias būdas išsaugoti ir gauti sesijos kintamuosius yra naudojantis PHP sesijos masyvą $_SESSION:

<html>
<body>

<?php

// sukuriame sesijos kintamąjį 'vardas' ir suteikiam jam reikšmę 'Lukas'
$_SESSION['vardas'] = 'Lukas';

// panaudojame session kintamajį
print "Vartotojo vardas yra: " . $_SESSION['vardas'];

?>

</body>
</html>

Naršyklėje matysime:

"Vartotojo vardas yra: Lukas

Pavyzdys

Šiame pavyzdyje sukursime paprastą puslapio peržiūrų skaičiavimo skriptą. Funkcija isset(); patikrina ar kintamasis 'perziuros' yra jau sukurtas. Jei jau sukurtas, tiesiog padidiname vienetu jo reikšmę, jei nesukurtas - sukuriame ir priskiriame jam reikšmę lygią vienam:

<?php 
session_start();

if(isset($_SESSION['perziuros']))

$_SESSION['perziuros'] = $_SESSION['perziuros']+1;

else

$_SESSION['perziuros'] = 1;

print "peržiūros = ". $_SESSION['perziuros'];
?>

Pastaba: kadangi if ciklas turi tik vieną vykdomą sakinį, riestinių skliaustų dėti nėra būtina. Aišku, jei uždesite - nepakenks :)

Sesijos sunaikinimas

Jei norite ištrinti viską, ką išsaugojote kaip sesijos kintamąjį, galite naudoti visiems kintamiesiems išvalyti skirtą funkciją unset(); arba būtent sesijoms skirtą session_destroy();

Su unset(); taip pat galite išvalyti bet kokią vieną reikšmę:

<?php
unset($_SESSION['perziuros']);
?>

arba išvalyti visas sesijos reikšmes:

<?php 
unset($_SESSION);
?>

Kitas būdas yra tiesiog pilnai sunaikinti sesiją iškviečiant session_destroy(); funkciją:

<?php
session_destroy();?>

Komentarai
Paieška
Haris   |2009-06-27 02:34:11
avatar Nors lygiai tą pati skaiciau "Apache , PHP & SQL" knygoje , bet vistiek
labai pravers
Gera pamoka
Tik registruoti vartotojai gali rašyti komentarus!

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

 

bottom
top

Reklamos

joomla, css, html, web dizaino, photoshop, pascal forumai
  • Hey.lt - Nemokamas lankytojų skaitliukas

Naujausi

Skaitomiausi


bottom

Dizainą sukūrė: Neshas ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- Privertė veikti: Primatas
parašyti administracijai
Manualai.lt 2008-2009

t