Používanie cookies s PHP

Ukladajte informácie o návštevníkoch webových stránok pomocou súborov cookie

podnikateľka pracujúca na notebooku

Blend Images - JGI/Jamie Grill/Brand X Pictures/Gettty Images





Ako vývojár webových stránok môžete použiť PHP na nastavenie cookies, ktoré obsahujú informácie o návštevníkoch vašej webovej stránky. Cookies ukladať informácie o návštevníkovi stránky v počítači návštevníka, ku ktorému je možné pristupovať pri opätovnej návšteve. Jedným z bežných spôsobov použitia súborov cookie je uloženie prístupového tokenu, aby sa používateľ nemusel prihlasovať zakaždým, keď navštívi vašu webovú stránku. Cookies môžu ukladať aj ďalšie informácie, ako je meno užívateľa, dátum poslednej návštevy a obsah nákupného košíka.

Hoci súbory cookie existujú už roky a väčšina ľudí ich má povolené, niektorí používatelia ich kvôli tomu neakceptujú obavy o súkromie alebo ich automaticky vymazať po ukončení relácie prehliadania. Pretože súbory cookie môže používateľ kedykoľvek odstrániť a sú uložené v a formát čistého textu , nepoužívajte ich na ukladanie ničoho citlivého.



Ako nastaviť súbor cookie pomocou PHP

V PHP, setcookie() funkcia definuje súbor cookie. Odošle sa spolu s ostatnými hlavičkami HTTP a odošle sa pred analýzou tela HTML.

Súbor cookie sa riadi syntaxou:



|_+_|

kde názov označuje názov súboru cookie a hodnotu popisuje obsah súboru cookie. Pre setcookie() funkciu, iba názov parameter je povinný. Všetky ostatné parametre sú voliteľné.

Príklad súboru cookie

​Ak chcete v prehliadači návštevníka nastaviť súbor cookie s názvom „UserVisit“, ktorý nastaví hodnotu na aktuálny dátum a ďalej nastaví expiráciu na 30 dní (2592000 = 60 sekúnd * 60 minút * 24 hodín * 30 dní), použite nasledujúci kód PHP:

|_+_|

Súbory cookie musia byť odoslané pred odoslaním kódu HTML na stránku, inak nefungujú, takže setcookie() funkcia sa musí objaviť pred tag.

Ako získať súbor cookie pomocou PHP

Ak chcete získať súbor cookie z počítača používateľa pri ďalšej návšteve, zavolajte ho pomocou nasledujúceho kódu:



|_+_|

Tento kód najskôr skontroluje, či súbor cookie existuje. Ak áno, privíta používateľa späť a oznámi mu, kedy ho naposledy navštívil. Ak je používateľ nový, vytlačí sa všeobecná uvítacia správa.

TIP: Ak voláte súbor cookie na tej istej stránke, na ktorej ho plánujete nastaviť, načítajte ho predtým, ako ho prepíšete.



Ako zničiť cookie

Ak chcete zničiť súbor cookie, použite setcookie() znova, ale nastavte dátum vypršania platnosti tak, aby bol v minulosti:

|_+_|

Voliteľné parametre

Okrem tohoto hodnotu a vypršať, a setcookie() funkcia podporuje niekoľko ďalších voliteľných parametrov:



  • Cesta identifikuje serverovú cestu súboru cookie. Ak ho nastavíte na „/“, súbor cookie bude dostupný pre celú doménu. V predvolenom nastavení súbor cookie funguje v adresári, v ktorom je nastavený, ale môžete ho vynútiť, aby fungoval v iných adresároch, ak ich špecifikujete pomocou tohto parametra. Táto funkcia je kaskádovitá, takže všetky podadresáre v zadanom adresári budú mať tiež prístup k cookie.
  • doména ​ ​identifikuje konkrétnu doménu, v ktorej súbor cookie funguje. Ak chcete, aby súbor cookie fungoval na všetkých subdoménach, explicitne uveďte doménu najvyššej úrovne (napr. „sample.com“). Ak nastavíte doménu na „www.sample.com“, súbor cookie je dostupný iba v subdoméne www.
  • Zabezpečiť určuje, či sa má súbor cookie prenášať cez zabezpečené pripojenie. Ak je táto hodnota nastavená na hodnotu TRUE, súbor cookie sa nastaví iba pre pripojenia HTTPS. Predvolená hodnota je FALSE.
  • Httponly ​, keď je nastavené na hodnotu TRUE, umožní prístup k súboru cookie iba prostredníctvom protokolu HTTP. Štandardne je hodnota FALSE. Výhodou nastavenia súboru cookie na hodnotu TRUE je, že skriptovacie jazyky nemajú prístup k súboru cookie.