PHP handleiding

PHP TUIS PHP Inleiding PHP installeer PHP sintaksis PHP opmerkings PHP veranderlikes PHP Echo / Druk PHP datatipes PHP Strings PHP-nommers PHP Wiskunde PHP konstante PHP-operateurs PHP As...Anders...Elseif PHP skakelaar PHP-lusse PHP funksies PHP-skikkings PHP Superglobals PHP RegEx

PHP- vorms

PHP-vormhantering PHP-vorm validering PHP-vorm word vereis PHP-vorm URL/e-pos PHP-vorm voltooi

PHP Gevorderd

PHP datum en tyd PHP sluit in PHP-lêerhantering PHP-lêer oop/lees PHP-lêer skep/skryf PHP-lêer oplaai PHP-koekies PHP-sessies PHP filters PHP-filters Gevorderd PHP-terugbelfunksies PHP JSON PHP-uitsonderings

PHP OOP

PHP Wat is OOP PHP Klasse/Objekte PHP Konstrukteur PHP vernietiger PHP Toegangswysigers PHP erfenis PHP konstante PHP Abstrakte Klasse PHP-koppelvlakke PHP eienskappe PHP statiese metodes PHP Statiese Eienskappe PHP naamruimtes PHP Iterables

MySQL- databasis

MySQL-databasis MySQL Connect MySQL Skep DB MySQL Skep tabel MySQL Voeg data in MySQL Kry Laaste ID MySQL Voeg veelvuldige in MySQL voorberei MySQL Kies Data MySQL Waar MySQL Bestel deur MySQL verwyder data MySQL-opdateringsdata MySQL-limietdata

PHP XML

PHP XML-ontleders PHP SimpleXML-ontleder PHP SimpleXML - Kry PHP XML Expat PHP XML DOM

PHP - AJAX

AJAX Intro AJAX PHP AJAX-databasis AJAX XML AJAX Live Search AJAX-peiling

PHP voorbeelde

PHP voorbeelde PHP samesteller PHP vasvra PHP Oefeninge PHP-sertifikaat

PHP- verwysing

PHP Oorsig PHP Skikking PHP-kalender PHP datum PHP gids PHP fout PHP-uitsondering PHP lêerstelsel PHP filter PHP FTP PHP JSON PHP sleutelwoorde PHP Libxml PHP-pos PHP Wiskunde PHP Diverse PHP MySQLi PHP-netwerk PHP-uitsetbeheer PHP RegEx PHP SimpleXML PHP-stroom PHP-string PHP veranderlike hantering PHP XML-ontleder PHP zip PHP Tydsones

PHP -sessies


'n Sessie is 'n manier om inligting (in veranderlikes) te stoor om oor verskeie bladsye gebruik te word.

Anders as 'n koekie, word die inligting nie op die gebruiker se rekenaar gestoor nie.


Wat is 'n PHP-sessie?

Wanneer jy met 'n toepassing werk, maak jy dit oop, doen 'n paar veranderinge, en dan maak jy dit toe. Dit is baie soos 'n sessie. Die rekenaar weet wie jy is. Dit weet wanneer jy die toepassing begin en wanneer jy eindig. Maar op die internet is daar een probleem: die webbediener weet nie wie jy is of wat jy doen nie, want die HTTP-adres handhaaf nie die toestand nie.

Sessieveranderlikes los hierdie probleem op deur gebruikersinligting te stoor wat oor verskeie bladsye gebruik kan word (bv. gebruikersnaam, gunstelingkleur, ens.). Sessieveranderlikes hou by verstek totdat die gebruiker die blaaier toemaak.

Dus; Sessieveranderlikes bevat inligting oor een enkele gebruiker en is beskikbaar vir alle bladsye in een toepassing.

Wenk: As jy 'n permanente berging benodig, wil jy dalk die data in 'n databasis stoor .


Begin 'n PHP-sessie

'n Sessie word met die session_start()funksie begin.

Sessieveranderlikes word gestel met die PHP globale veranderlike: $_SESSION.

Kom ons skep nou 'n nuwe bladsy genaamd "demo_session1.php". Op hierdie bladsy begin ons 'n nuwe PHP-sessie en stel 'n paar sessieveranderlikes in:

Voorbeeld

<?php
// Start the session
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Set session variables
$_SESSION["favcolor"] = "green";
$_SESSION["favanimal"] = "cat";
echo "Session variables are set.";
?>

</body>
</html>

Let wel: Diesession_start()funksie moet die heel eerste ding in jou dokument wees. Voor enige HTML-etikette.



Kry PHP-sessie veranderlike waardes

Vervolgens skep ons nog 'n bladsy genaamd "demo_session2.php". Vanaf hierdie bladsy sal ons toegang verkry tot die sessie-inligting wat ons op die eerste bladsy gestel het ("demo_session1.php").

Let daarop dat sessieveranderlikes nie individueel na elke nuwe bladsy deurgegee word nie, maar dat hulle in plaas daarvan herwin word uit die sessie wat ons aan die begin van elke bladsy oopmaak ( session_start()).

Let ook op dat alle sessieveranderlike waardes in die globale $_SESSION veranderlike gestoor word:

Voorbeeld

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// Echo session variables that were set on previous page
echo "Favorite color is " . $_SESSION["favcolor"] . ".<br>";
echo "Favorite animal is " . $_SESSION["favanimal"] . ".";
?>

</body>
</html>

Nog 'n manier om al die sessieveranderlike waardes vir 'n gebruikersessie te wys, is om die volgende kode uit te voer:

Voorbeeld

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
print_r($_SESSION);
?>

</body>
</html>

Hoe werk dit? Hoe weet dit dat dit ek is?

Die meeste sessies stel 'n gebruikersleutel op die gebruiker se rekenaar wat so iets lyk: 765487cf34ert8dede5a562e4f3a7e12. Dan, wanneer 'n sessie op 'n ander bladsy oopgemaak word, skandeer dit die rekenaar vir 'n gebruikersleutel. As daar 'n passing is, kry dit toegang tot daardie sessie, indien nie, begin dit 'n nuwe sessie.


Verander 'n PHP-sessie-veranderlike

Om 'n sessieveranderlike te verander, skryf dit net oor:

Voorbeeld

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// to change a session variable, just overwrite it
$_SESSION["favcolor"] = "yellow";
print_r($_SESSION);
?>

</body>
</html>

Vernietig 'n PHP-sessie

Om alle globale sessieveranderlikes te verwyder en die sessie te vernietig, gebruik session_unset() en session_destroy():

Voorbeeld

<?php
session_start();
?>
<!DOCTYPE html>
<html>
<body>

<?php
// remove all session variables
session_unset();

// destroy the session
session_destroy();
?>

</body>
</html>

PHP Oefeninge

Toets jouself met oefeninge

Oefening:

Skep 'n sessieveranderlike genaamd "favcolor".

session_start();
["favcolor"] = "green";