Annonser

I denne opplæringen vil du lære hvordan du lagrer bestemte typer data på serveren på midlertidig basis ved hjelp av PHP-økten.

Hva er en Økt

Selv om du kan lagre data ved hjelp av informasjonskapsler, men det har noen sikkerhetsproblemer. Siden cookies er lagret på brukerens datamaskin er det mulig for en angriper å enkelt endre en cookie innhold for å sette inn potensielt skadelige data i din søknad som kan bryte din søknad.,

Også hver gang nettleseren ber om en URL-adresse til serveren, alle cookie-data til et nettsted er automatisk sendt til serveren i forespørselen. Det betyr at hvis du har lagret 5 informasjonskapsler på brukerens system, hver med 4 KB i størrelse, nettleseren behov for å laste opp 20KB av data hver gang du bruker viser en side, noe som kan påvirke ytelsen til nettstedet ditt.

Du kan løse begge disse problemene ved hjelp av PHP-økten. En PHP-økt lagrer data på serveren i stedet for brukerens datamaskin., I en økt basert miljø, hver bruker er identifisert gjennom et unikt nummer som er kalt session id eller SID. Dette unike session-ID-brukes til å koble hver bruker med sin egen informasjon på serveren som e-post, innlegg, etc.

Tips: økt-Id-er tilfeldig generert av PHP-motoren som er nesten umulig å gjette. Videre, fordi økten data som er lagret på serveren, det trenger ikke å sendes med hver nettleser forespørsel.,

Starte en PHP-Session

Før du kan lagre noen informasjon i økt variabler, må du først starte opp økten. For å starte en ny økt, bare ring PHP session_start() funksjon. Det vil skape en ny økt, og genererer en unik økt-ID for brukeren.

PHP-koden i eksemplet nedenfor er bare starter en ny økt.,

Eksempel

Last ned

<?php// Starting sessionsession_start();?>

session_start() funksjon først sjekker for å se om en økt allerede finnes ved å se på tilstedeværelsen av en økt-ID. Hvis den finner en, dvs. hvis økten er allerede i gang, setter opp økten variabler og hvis ikke, det starter en ny økt ved å opprette en ny økt-ID.

Merk: Du må ringe session_start() funksjon ved begynnelsen av side dvs., før noen utdata som er generert av din script i nettleseren, mye som du gjør mens du stiller cookies med setcookie() funksjon.

Lagre og få Tilgang til Sesjon Data

Du kan lagre alle dine session data som nøkkel / verdi-par i $_SESSION superglobal utvalg. Lagrede data kan nås i løpet av livet av en økt. Vurder følgende skript, noe som skaper en ny økt, og registrerer to økten variabler.,

for Å få tilgang økten data vi satt på vår forrige eksempel fra en annen side på samme web domene — rett og slett gjenskape økten ved å ringe session_start() og deretter passerer den tilsvarende tasten til $_SESSION associative array.

PHP-koden i eksempelet ovenfor gir følgende effekt.

Hei, Peter Parker

Merk: for Å få tilgang økten data på samme side er det ikke nødvendig å gjenskape økt siden det allerede har blitt startet på toppen av siden.,

Ødelegge en Økt

Hvis du ønsker å fjerne visse session data, er det bare fjerne den tilsvarende tasten på $_SESSION associative array, som vist i følgende eksempel:

Imidlertid å ødelegge en økt helt, bare ring session_destroy() funksjon. Denne funksjonen trenger ikke noe argument og en enkelt samtale ødelegger alle økten data.,

Eksempel

Last ned

<?php// Starting sessionsession_start(); // Destroying sessionsession_destroy();?>

Merk: Før du ødelegge en økt med session_destroy() funksjon, du må først opprette økt miljøet hvis det ikke allerede er det ved hjelp av session_start() funksjon, slik at det ikke er noe å ødelegge.

Hver PHP økten er en timeout verdi — en varighet, målt i sekunder — som bestemmer hvor lenge økten bør forbli levende i fravær av alle brukere aktivitet., Du kan justere denne tiden varighet, ved å endre verdien av session.gc_maxlifetime variabel i PHP-konfigurasjonsfilen (php.ini).

Annonser

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *