reclame

în acest tutorial veți învăța cum să stocați anumite date pe server pe o bază temporară, folosind sesiune PHP.

ce este o sesiune

deși puteți stoca date folosind cookie-uri, dar aceasta are unele probleme de securitate. Deoarece cookie-urile sunt stocate pe computerul utilizatorului, este posibil ca un atacator să modifice cu ușurință un conținut al cookie-urilor pentru a insera date potențial dăunătoare în aplicația dvs. care ar putea rupe aplicația dvs.,de asemenea, de fiecare dată când browserul solicită o adresă URL serverului, toate datele cookie pentru un site web sunt trimise automat serverului în cadrul solicitării. Înseamnă că dacă ați stocat 5 cookie-uri în sistemul utilizatorului, fiecare având dimensiunea de 4KB, browserul trebuie să încarce 20kb de date de fiecare dată când utilizatorul vizualizează o pagină, ceea ce poate afecta performanța site-ului dvs.

puteți rezolva ambele probleme folosind sesiunea PHP. O sesiune PHP stochează date pe server, mai degrabă decât pe computerul utilizatorului., Într-un mediu bazat pe sesiune, fiecare utilizator este identificat printr-un număr unic numit session identifier sau Sid. Acest ID unic de sesiune este folosit pentru a conecta fiecare utilizator cu propriile informații de pe server, cum ar fi e-mailuri, postări etc.

sfat: ID-urile sesiunii sunt generate aleator de motorul PHP, ceea ce este aproape imposibil de ghicit. Mai mult, deoarece datele sesiunii sunt stocate pe server, nu trebuie trimise cu fiecare solicitare a browserului.,

pornirea unei sesiuni PHP

înainte de a putea stoca orice informație în variabilele sesiunii, trebuie mai întâi să porniți sesiunea. Pentru a începe o nouă sesiune, pur și simplu apelați funcția PHP session_start(). Acesta va crea o nouă sesiune și va genera un ID de sesiune unic pentru utilizator.

codul PHP din exemplul de mai jos începe pur și simplu o nouă sesiune.,

exemplu

descărcați

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

funcția session_start()verifică mai întâi dacă există deja o sesiune căutând prezența unui ID de sesiune. Dacă găsește una, adică dacă sesiunea este deja începută, setează variabilele sesiunii și, dacă nu, începe o nouă sesiune prin crearea unui nou ID de sesiune.

Notă: Trebuie să apelați funcția session_start()la începutul paginii, adică., înainte de orice ieșire generată de script-ul în browser-ul, la fel ca tine în timp ce setarea cookie-urile cu setcookie() funcție.

Stocarea și Accesarea Datelor Sesiunii

puteți stoca toate datele de sesiune ca perechi cheie-valoare în $_SESSION superglobale matrice. Datele stocate pot fi accesate pe durata de viață a unei sesiuni. Luați în considerare următorul script, care creează o nouă sesiune și înregistrează două variabile de sesiune.,

Pentru a accesa datele de sesiune ne-am stabilit pe exemplul anterior de la orice altă pagină de pe același domeniu web — pur și simplu recrea sesiune de asteptare session_start() și apoi trece tasta corespunzătoare de la $_SESSION array asociativ.

codul PHP din exemplul de mai sus produce următoarea ieșire.Notă: Pentru a accesa datele sesiunii din aceeași pagină, nu este nevoie să recreați sesiunea, deoarece a fost deja începută în partea de sus a paginii.,

Distruge o Sesiune

Dacă doriți să eliminați anumite date de sesiune, pur și simplu dezactivează tasta corespunzătoare de $_SESSION array asociativ, așa cum se arată în următorul exemplu:

cu toate Acestea, pentru a distruge o sesiune complet, pur și simplu apel session_destroy() function. Această funcție nu are nevoie de niciun argument și un singur apel distruge toate datele sesiunii.,

Exemplu

Download

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

Notă: Înainte de a distruge o sesiune cu session_destroy() funcția, trebuie mai întâi să recreeze sesiune de mediu, dacă nu este deja acolo, folosind session_start() funcția, astfel că nu există ceva pentru a distruge.fiecare sesiune PHP are o valoare de expirare — o durată, măsurată în secunde — care determină cât timp o sesiune ar trebui să rămână în viață în absența oricărei activități a utilizatorului., Puteți ajusta această durată de expirare modificând valoarea variabilei session.gc_maxlifetime din fișierul de configurare PHP (php.ini).

reclame

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *