î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.,