Zelf koekjes bakken

Door Ad Fundum, 5 jaar geleden, 11.497x bekeken

Iedereen weet dat de koekjes die je zelf bakt het lekkerst smaken. Daarom een lekker recept voor je eigen koekjes. En een recept om nog niet verzonden koekjes zelf op te eten.
Voor wanneer je wilt kunnen volgen hoe het nu eigenlijk werkt, en als je wilt kunnen variëren op het recept.

Ingrediënten:
- één call naar header()
- één string volgens RFC 6265

Bereidingtip voor eigen consumptie:
- headers_sent(), headers_list() en header_remove()

Toen OWASP aangaf dat het Same-site attribuut veiliger was en PHP 7.2 dat nog niet had in setcookie() en setrawcookie() is het script gemaakt.
Met een extra functie voor het verwijderen van nog niet verzonden cookies, wanneer output buffering aan staat.

Gesponsorde koppelingen

PHP script bestanden

  1. koekjesbakken.php

 

Er zijn 3 reacties op 'Zelf koekjes bakken'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Thomas van den Heuvel
Thomas van den Heuvel
5 jaar geleden
 
0 +1 -0 -1
Overschrijft schrijfCookie() nu niet alle andere cookies? Ik zie geen false flag voor de replace-parameter (tweede argument) van de header() aanroep?

Op dit moment werkt schrijfCookie() dus waarschijnlijk niet hetzelfde als setcookie()?

Misschien wat meer toelichting wat wisCookie() allemaal doet? En waarom dat nodig is?

$this is waarschijnlijk een overblijfsel van een class waar deze functies vandaan komen?
Marthijn Buijs
Marthijn Buijs
5 jaar geleden
 
0 +1 -0 -1
Die 11 lijkt me onduidelijk, ik vermoed dit van de "Set-Cookie" string komt, je zou voor de duidelijkheid een variabel kunnen maken met de strlen-functie.
Ad Fundum
Ad Fundum
5 jaar geleden
 
Je hebt gelijk Thomas. Als het nog had gemogen had ik het script aangepast.

Het script is als een recept. Je kunt er op variëren. En het is leuk dat jullie meelezen, want daardoor ga ik ook nog meer de details in en leer ik nieuwe dingen.
Zo had ik me nog niet gerealiseerd dat header() niets met output buffering te maken had en dat de encoding van cookies UTF-8 is, en dat attributen als een path toch meestal URL-encoded zijn.

Ik begrijp het verlangen van Marthijn om het hardcoded getal 11 te voorzien van een naam, ik zou dat dan eerder willen doen met constanten dan met een variabele. Een klein stukje commentaar in de code zou ook al goed zijn.

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. koekjesbakken.php

Labels

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.