webmasterstuff: cookies

Gebruik van cookies In een php-omgeving kan je door middel van cookies (kleine bestandjes die je achterlaat op de computer van de bezoeker van je website) controleren of die persoon lid is van je website, ingelogd is, een bepaald level bezit enzovoorts.
Natuurlijk moet je ook kunnen controleren of je bezoeker een geldige cookie bezit.

De ducksite maakt zelf ook gebruik van cookies.

Het plaatsen van een cookie
Deze code moet je helemaal bovenaan je pagina plaatsen (nog voor de html-tag omdat andere data het plaatsen van een cookie kan blokkeren.
 
<?php                                                           // begin de php-code
$voornaam="voornaam";                                           // we willen 2 variabelen vanuit een formulier, 
                                                                   inlogsessie enz in het cookie plaatsen                                                             
$naam="naam";                                                   // de 2e variabele
$cookie_name = "ducksite";                                      // geef je cookie een originele naam
setcookie($cookie_name, "$voornaam;$naam", time() + 3600, '/'); // je plaatst het cookie met eerst haar naam, daarna de variabelen
                                                                   (mag meer dan 2 zijn he) dan de tijd dat je wilt dat het geldig is in sec
                                                                   het laatste / teken gebruiken als cookie binnen je hele site geldig is
?>                                                              // sluit de php-code


Het controleren en lezen van een cookie
Onderstaande code kun je overal gebruiken op je pagina gebruiken. Ik zet meestal de naam van de cookie en het exploden van de info (tussen php-tags) wel helemaal bovenaan, maar het echo'en doe ik tussen php-tags op de pagina waar ik het wil. Ik explode omdat ik info in het cookie gezet heb na het inloggen en deze info wil gebruiken. Je vindt op het internet eenvoudigere manieren als je gewoon maar het cookie wilt controleren zonder het uit te lezen.
 

<?php
$cookie_name = "ducksite";                                                   // naam van je cookie   hier dus ducksite
if(!isset($_COOKIE[$cookie_name]) == 1) {                                    // controle of er wel een cookie is of niet
        echo  "Er bevindt zich nog geen ducksite-cookie op jouw computer.";  // wat je zegt/doet als er geen cookie is
 } else {                                                                    // wat je zegt/doet als er wel een geldig cookie is
        list($voornaam, $naam) = explode(";", $_COOKIE['ducksite']);         // de meerdere info uit het cookie halen, in deze volgorde kun je de 
                                                                                1e waarde aanroepen nadien met $voornaam enz
        echo  "Dag ". $voornaam ;                                            // hier kun je bv laten zeggen wat de voornaam is opgeslagen en gehaald uit het cookie
                                                                             // ik doe dit tussen php-tags elders op de pagina waar ik dit wens
        die ();                                                              // ik sluit steeds zo af
}
?>


Succes!

Opgepast: er is Europese regelgeving om cookies te plaatsen op website.

bron: www.w3schools.com