Skrevet av: GratisGuide.net
Informasjonskapsler (kapsler, cookies) er en effektiv måte å lagre informasjon i nettleseren til dine besøkende. Med PHP er det en enkel sak å lage slike kapsler. I denne artikkelen skal vi se nærmere på hvordan du bruker funksjonen for å lage kapsler med PHP.
Kapsler må sendes før annet innhold når de lages i PHP. Husk derfor å angi kapsler før du sender annet innhold til nettleseren (med f.eks. print eller echo).
Definisjonen av funksjonen vi skal bruke er:
Litt nærmerer forklaring kan nok være på sin plass.
Det vi ser er at funksjonen setcookie returnerer en boolensk verdi; det vil si en verdi som er enten-eller. Enten sann eller usann. Funksjonen setcookie returnerer sann dersom utførelsen var vellykket, og usann dersom en feil oppstod.
For å bruke setcookie må vi bruke minimum et navn, som behandles som en streng. Andre verdier vi kan velge å ta med:
Verdi: Den verdien vi vil lagre i kapselen med navnet navn.
Utgår: Når kapselen utgår; når nettleseren skal slette den, angitt som et UNIX tidsstempel i GMT.
Bane: Hvilken bane kapselen gjelder for, sett i sammenheng med URL-en.
Domene: Hvilket domene kapselen gjelder for, f.eks. med eller uten www.
Sikker: Hvorvidt kapselen er sikker eller ikke; om den brukes med http- eller https-protokollen.
Kanskje litt gresk, men ikke så vrient. La oss lage en kapsel som ganske enkelt lagrer verdien "1" i en kapsel med navnet «teller»:
Her har vi laget en enkel kapsel som vi har gitt navnet «teller», og verdien "teller" er gitt er "1". Denne informasjonen blir sendt til nettleseren som kan velge å lagre den. Siden vi ikke har angitt når kapselen utgår, slettes den når nettleseren lukkes (brukersesjonen (i nettleseren) avsluttes).
Vi kan utvide kapselen vår, og angi at den skal lagres i nettleseren i to timer (2 t = 120 min * 60 sek = 7200 sek). Det gjør vi ved å legge til en verdi for når kapselen utgår. I PHP finnes funksjonen time som vi kan bruke her:
Her får kapselen i tillegg informasjon om når den utgår. Nettleseren vil da slette kapselen når det tidspunktet er nådd. Merk deg at setcookie tar tidsinformasjonen som et UNIX tidsstempel, og gjør om den informasjonen til det datoformatet som skal angis i en kapsel (i dette formatet: Tue, 01-Jul-03 12:25:55 GMT).
Vi kan utvide kapselen vår ytterligere, ved å angi hvilken bane kapselen skal gjelde for. Hvis vi tar oss selv som eksempel, vil kapslene vi har laget over gjelde over alt på nettstedet vårt (forutsatt at det var www.gratisguide.net som satte kapselen):
http://www.gratisguide.net/
http://www.gratisguide.net/info/
http://www.gratisguide.net/bruker/profil/
Ved å angi en bane i kapselen vår kan vi si at den bare skal gjelde for deler av nettstedet. La oss lage denne kapselen:
Kapselen vil nå bare bli sendt fra nettleseren når jeg besøker
http://www.gratisguide.net/info/
men ikke når jeg besøker
http://www.gratisguide.net/
http://www.gratisguide.net/bruker/profil/
Til slutt kan vi angi hvilket domene vi vil at kapselen skal fungere med. Merk deg at få (om noen) nettlesere aksepterer kapsler der domenenavnet i kapselen avviker fra det domenenavnet som sender kapselen.
Her har vi sagt at kapselen gjelder alle mapper (vi satte banen til / ) og den gjelder bare for domenenet "www.gratisguide.net". Det betyr at om jeg besøker disse URL-ene vil ikke kapselen sendes fra nettleseren min:
http://www.gratisguide.net/info/
http://sikker.gratisguide.net/
http://forum.gratisguide.net/
Dersom jeg ønsker at kapselen min skal gjelde alle (www, test, sikker, forum etc.) kan jeg angi dette ved å unnlate det første leddet i domenenavnet i kapselen jeg setter:
Her er www. erstattet av et enkelt punktum, som betyr at alle subdomenener (www, test, sikker, forum etc) er OK og at kapselen da sendes uavhengig av hvilket subdomene som brukes.
Til slutt nevner vi at dersom du bruker sikker protokoll ved overføring av sidene dine (HTTPS) må du angi dette i kapselen dersom du vil at den skal brukes med HTTPS. Det gjør du ved å sette verdien til "1" (som betyr sann):
Du kan velge å sette denne til "0" (som betyr usann) eller ikke ta den med om du vil bruke kapselen med vanlig HTTP.
Med unntak av navnet på kapselen er all informasjonen valgfri. Du kan derfor lage en kapsel som ser slik ut:
Som betyr at det lages en kapsel uten noen verdi og bare for HTTPS-overføring.
Kapsler der du ikke har angitt når den utgår slettes når brukeren avslutter nettlesersesjonen sin (lukker den). Du kan slette en kapsel ved å angi et tidspunkt i fortiden. Vær oppmerksom på at du må angi samme antall parametre (verdier) i kapselen du vil slette, som da du laget den:
Laget du denne kapselen:
sletter du den med denne:
Legg merke til at verdien "1" er satt til tom "" når vi sletter den, og at tidspunktet er satt to timer tilbake i tid, i stedet for to timer frem i tid. Vi kunne godt ha satt tiden 15 timer tilbake, poenget er bare å si til nettleseren at kapselen er utgått.
Ønsker du å gjengi denne artikkelen eller noe fra den må du gjerne gjøre det, men ikke glem kildereferanse. For å lenke til denne artikkelen kan du bruke URL-en http://www.gratisguide.net/artikler/php/lage-informasjonskapsler-(cookies).html.
GratisGuide.net
» Forsiden
» Om oss
» Nyhetsbrev
» Lage lenker til oss
» Opphavsrett
Nyhetsklipp
» Hovedside
» RSS-feeds
Artikler
» Hovedside
» Apache webserver
» Domenenavn
» Grafikk og clipart
» HTML og CSS
» Hjemmeside på 1-2-3
» Lage en basis-side
» Javascript
» MySQL
» PHP
» Søkemotorer
» WAP og WML
» Webdesign
Ressurs-databasen
» Hovedside
» Dmoz / ODP
» World/Norsk/
» Regional/.../Norway/
» Domeneavn/e-post
» Gjestebøker
» Grafikk
» Innhold/syndikert
» Juridisk/nettikette
» Lenke-/bannerbytte
» Programmeringsspråk
» HTML
» Javascript
» MySQL og SQL
» PHP
» WML-script
» Reklame/annonsering
» Søkemotorer/kataloger
» Statistikk/tellere
» Topplister
» Vedlikehold
» WAP og WML
» Webdesign-maler
» Webhotell
» Webmaster-forum
» Annet
Bokdatabasen
» Hovedside
» Databaser
» Handel og markedsføring
» Innholdsredigering
» Juridisk
» Programmering
» Programvare
» Websideutvikling
» Generelt
Kodeservice
» Hovedside
» Kodegeneratorer
» Dato
» Fylkesliste
» Meta-merke
» Rammesett
» Søkebokser
» Sprett-opp-vindu
» Stilark
» WML
Innholdstjenester
» Hovedside
» Diskusjonsforum
» IP-adresse
» Nyhetsoversikt
» Om dagen i dag