PHP istunnot
- Edellinen sivu PHP evästeet
- Seuraava sivu PHP E-mail
PHP session-variabelit käytetään tallentamaan tietoja käyttäjän istunnosta tai muuttamaan käyttäjän istunnon asetuksia. Session-variabelit tallentavat tiedot yhden käyttäjän, ja ne ovat käytettävissä sovelluksen kaikissa sivuissa.
PHP Session-variabeli
Kun suoritat sovelluksen, avaat sen, tehdäksesi muutoksia ja sitten suljet sen. Tämä on samanlaista kuin istunto. Tietokone tietää kuka olet. Se tietää, milloin aloitat sovelluksen ja milloin lopetat sen. Mutta internetissä on ongelma: palvelin ei tiedä, kuka olet ja mitä teet, koska HTTP-osoitteet eivät pysty ylläpitämään tilaa.
PHP-istunnon avulla tallennetaan käyttäjätiedot myöhempää käyttöä varten (esim. käyttäjänimi, ostetut tuotteet jne.), mutta istuntotiedot ovat väliaikaisia, ja ne poistetaan, kun käyttäjä poistuu sivustolta. Jos tarvitset pysyvän tallennuksen, voit tallentaa tiedot tietokantaan.
Istunnon toimintaperiaate on: luoda jokaiselle vieraalle yksilöllinen id (UID) ja tallentaa muuttujat tämän UID:n perusteella. UID tallennetaan cookiin tai siirretään URL:n kautta.
Aloita PHP-istunto
Ennen kuin tallennat käyttäjätietoja PHP:n istuntoon, sinun täytyy ensin käynnistää istunto.
Huomautus:session_start()-funktio täytyy olla <html>-tagin ennen:
<?php session_start(); ?> <html> <body> </body> </html>
Yllä oleva koodi rekisteröi käyttäjän istunnon palvelimelle, jotta voit aloittaa käyttäjätietojen tallentamisen, ja käyttäjäistunnolle annetaan UID.
Tallenna Session-variabeli
Oikea tapa tallentaa ja hakea session-variabiloe PHP:n $_SESSION-variablen avulla:
<?php session_start(); // tallenna istunnon tiedot $_SESSION['views']=1; ?> <html> <body> <?php //hanki istunnon tiedot echo "Pageviews=". $_SESSION['views']; ?> </body> </html>
Tulostus:
Pageviews=1
Alla olevassa esimerkissä luomme yksinkertaisen sivunäkymä-laskurin. isset() -funktiota käytetään tarkistamaan, onko "views"-muuttuja asetettu. Jos "views"-muuttuja on asetettu, lisäämme laskurin. Jos "views" ei ole asetettu, luomme "views"-muuttujan ja asetamme sen arvoksi 1:
<?php session_start(); if(isset($_SESSION['views'])) $_SESSION['views']=$_SESSION['views']+1; else $_SESSION['views']=1; echo "Views=". $_SESSION['views']; ?>
Lopeta Session
Jos haluat poistaa joitakin session-tietoja, voit käyttää unset() - tai session_destroy() -funktiota.
unset() -funktiota käytetään määritetyn session-muuttujan vapauttamiseen:
<?php unset($_SESSION['views']); ?>
Voit myös lopettaa session kokonaan session_destroy() -funktiolla:
<?php session_destroy(); ?>
Huomautus:session_destroy() palauttaa sessionin, ja menetät kaikki tallennetut session-tiedot.
- Edellinen sivu PHP evästeet
- Seuraava sivu PHP E-mail