Session / $_SESSION empty in Internet Explorer (IE)

Hallo zusammen,
wieder einmal eine kleine Sache, die ich gerne mit euch teilen will.
Aktuell bin ich stark auf Facebook unterwegs und programmiere dort kleine App/Gewinnspiel etc… Jeder Browser ist mein Freund, außer der IE, der speichert nämlich im iFrame nichts dauerhaft in die $_SESSION. Somit sind die einfachsten Sachen, die man aus der $_SESSION braucht, nicht zu erreichen.

Warum ist da so?
Aus Sicherheitsgründen, die natürlich nur Microsoft weiß, wird pro Aufruf in einem iFrame die $_SESSION komplett neu geschrieben / erstellt. Somit sind alle Daten verloren, die vorher in der $_SESSION gespeichert wurden.

ABER es gibt eine Lösung dazu:

<?php 
  // session fix for IE
  header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"');

  // default session start
  session_start();
?>

Mit diesem Header-Wunder werden auf einmal alle Sachen in die $_SESSION gespeichert und bleiben auch da 🙂

Viel Spaß
Marc

Marc Finnern: Marc Finnern ist ein FullStack-Developer. Sein Fachgebiet ist TYPO3, WordPress und InterRed. Ob Plugin, Backend oder Frontend-Arbeiten anfallen, alles ist möglich und machbar, man braucht nur die passende Idee.

This website uses cookies.