Använda kakor med PHP

Som webbplatsutvecklare kan du använda PHP för att ställa in cookies som innehåller information om besökarna på din webbplats. Cookies lagrar information om en webbplatsbesökare på besökarens dator som kan nås vid ett återbesök. En vanlig användning av cookies är att lagra ett åtkomsttoken så att användaren inte behöver logga in varje gång han besöker din webbplats. Cookies kan också lagra annan information som användarens namn, datum för det senaste besöket och innehållet i kundvagnen.

Även om kakor har funnits i flera år och de flesta har aktiverat dem, accepterar vissa användare antingen inte dem på grund av sekretessproblem eller raderar dem automatiskt när deras surfningssession stängs. Eftersom kakor kan tas bort av en användare när som helst och lagras i ett vanligt textformat, använd dem inte för att lagra något känsligt.

Hur man ställer in en cookie med PHP

I PHP, setcookie () funktion definierar en cookie. Det skickas tillsammans med de andra HTTP-rubrikerna och sänder innan HTML-koden analyseras.

En cookie följer syntaxen:

setcookie (namn, värde, löper ut, bana, domän, säkra, Httponly);

var namn anger namnet på kakan och värde beskriver cookieinnehållet. För setcookie () funktion, bara namn parameter krävs. Alla andra parametrar är valfria. 

Exempel Cookie

För att ställa in en cookie med namnet "UserVisit" i besökarens webbläsare som ställer in värdet till det aktuella datumet och vidare ställer ut giltighetstiden till 30 dagar (2592000 = 60 sekunder * 60 minuter * 24 timmar * 30 dagar), använd följande PHP-kod:

$ Månad = 2592000 + tid ();
// detta lägger till 30 dagar till aktuell tid
setcookie (UserVisit, date ("F jS - g: i a"), $ månad);
?>

Cookies måste skickas innan HTML skickas till sidan eller så fungerar de inte, så setcookie () funktionen måste visas före märka.

Hur man hämtar en cookie med PHP

För att hämta en cookie från användarens dator vid nästa besök, ring den med följande kod:

if (isset ($ _ COOKIE [ 'UserVisit']))

$ last = $ _COOKIE ['UserVisit'];
echo "Välkommen tillbaka!
Du besökte senast på ". $ Last;

annan

echo "Välkommen till vår webbplats!";

?>

Den här koden kontrollerar först om cookien finns. Om det gör det välkomnar det användaren tillbaka och meddelar när användaren senast besökte. Om användaren är ny skriver den ut ett generiskt välkomstmeddelande.

DRICKS: Om du ringer en cookie på samma sida planerar du att ställa in en, hämta den innan du skriver över den.

Hur man förstör en cookie

För att förstöra en cookie, använd setcookie () igen men ställ in utgångsdatumet för att vara i det förflutna:

$ förbi = tid () - 10;
// detta gör tiden för 10 sekunder sedan
setcookie (UserVisit, date ("F jS - g: i a"), $ tidigare);
?>

Valfria parametrar

Dessutom värde och upphöra, de setcookie () Funktionen stöder flera andra valfria parametrar:

  • Väg identifierar servervägen för cookien. Om du ställer in den till "/" kommer cookien att vara tillgänglig för hela domänen. Som standard fungerar cookien i den katalog den är inställd i, men du kan tvinga den att fungera i andra kataloger genom att ange dem med den här parametern. Denna funktion kaskader, så alla underkataloger i en specificerad katalog har också tillgång till cookien.
  • Domän   identifierar den specifika domänen som kakan fungerar i. För att få cookien att fungera på alla underdomäner anger du exakt toppdomänen (t.ex. "sample.com"). Om du ställer in domänen till "www.sample.com" är cookien bara tillgänglig i www-underdomänet.
  • Säkra anger om cookien ska sända över en säker anslutning. Om detta värde är satt till SANT ställs cookien in endast för HTTPS-anslutningar. Standardvärdet är FALSE.
  • Httponly , när den är satt till SANT kommer det bara att tillgå cookien via HTTP-protokollet. Som standard är värdet FALSE. Fördelen med att ställa in cookien till SANT är att skriptspråk inte har åtkomst till cookien.