Innholdsfortegnelse:
Video: 171st Knowledge Seekers Workshop, Part 1 , May 11, 2017 2024
Du har utvilsomt sett nettsteder som bruker informasjonskapsler for å spore hvem du er, muligens ønsker deg velkommen etter at du logg inn eller presenterer tilpasset informasjon om kontoen din etter å ha logget inn. Du kan bruke PHP-økter og informasjonskapsler for å gjøre dette, inkludert å sende dataene sammen i et skjema med hver forespørsel.
Men det er ikke sikkert og er ikke så fleksibelt nok til dagens webapplikasjoner. Heldigvis er det en bedre måte - og det er rett på fingertuppene dine: økter.
PHP-økter
En økt i PHP er en sikker måte å spore en bruker fra side til side på. Med en økt kan du lagre informasjon om brukere, for eksempel e-postadresse, navn, telefonnummer og hva andre opplysninger du har, og fyll ut den informasjonen automatisk der den er nødvendig på nettstedet.
For eksempel, si at ved innlogging legger du inn brukerens fornavn og e-postadresse fra brukerdatabasen din. Du kan lagre den informasjonen i en økt, hovedsakelig skjult fra brukeren, til du bruker den.
Du bruker øktvariabler som du ville ha andre variabler. Bak kulissene lagres øktene i en gruppe som heter $ _SESSION. Du lagrer verdier akkurat som du ville med et navngitt array i PHP. For eksempel kan du holde oversikt over en e-postadresse og navn slik:
$ _ SESSION ['emailAddress'] = "meg @ example. Com"; $ _SESSION ['firstName'] = "Steve";
Du kan også bruke økter til å holde oversikt over informasjon som er fylt ut på et webskjema uten å måtte bære den informasjonen via nettstedet i skjulte formvariabler.
PHP-cookies
Sessioner overføres i nettleserskapsler, som er små ekstra biter av informasjon som sendes til og fra en nettleser. De faktiske bitene av informasjon, eller hva disse bitene egentlig er, er opp til deg, programmereren.
Du kan for eksempel sende en informasjonskapsel som inneholder brukerens navn. Cookien kan da lagres på brukerens datamaskin, og neste gang hun besøker nettstedet, vil cookien bli sendt til programmet, som da vil presentere en personlig hilsen.
Men informasjonskapsler er som alle andre data du får fra en bruker - dataene fra informasjonskapsler må sanitiseres fordi det ikke kan stole på. Med andre ord, når programmet sender en informasjonskapsel til en besøkers nettleser, kan den besøkende redigere eller endre den informasjonskapselen for å være alt han vil.
Så hvis du (webutvikleren) bruker informasjonskapselen til å lagre et brukernavn, kan brukeren endre brukernavnet til det han ønsker og sende det tilbake til programmet.
Muligheten for at brukerne redigerer informasjonskapslene, løses i stor grad ved bare å bruke økter.Når en øktkake er opprettet, bruker den en hashverdi, som er en lang streng med tegn. Dette betyr at selv om brukerne endrer informasjonskapselverdien, med andre ord, hvis de endrer isen, endrer de egentlig ikke noe som du bruker direkte i programmet ditt.
I stedet håndterer PHP oversettelsen av denne hasen fra cookien på vegne av deg, og du kan deretter fortsette med å bruke ting i $ _SESSION-gruppen. De faktiske verdiene du lagrer i $ _SESSION-arrayet, blir aldri sett av brukeren; de eksisterer bare på serveren.
Selvfølgelig, ved bruk av økter med informasjonskapsler, betyr det at cookies må aktiveres i brukerens nettleser. Hvis de ikke er det, kan brukeren ikke bruke programmet.