Wie du PHP Session-Probleme lösen kannst

Veröffentlicht von Lukas am

Probleme mit PHP-Sessions

Schon seit Tagen saß ich nun ein einem einfachen Fehler in einem Login-Skript mit Sessions unter PHP.
Zuerst dachte ich, der Fehler sei schnell gefunden … Doch weit gefehlt.

Erst nach 2 – 3 Tagen habe ich dann die Lösung des Problems gefunden.

Doch ich beginne erstmal von Anfang an …

Für ein Webprojekt habe ich vor einer Weile einen geschützten Teil einer Seite geschrieben. Das Ganze funktioniert mit PHP und Sessions. Nachdem ich mich dann entschlossen habe mit dem Projekt auf einen neuen Server umzuziehen, ergaben sich einige Probleme.

Die meisten Probleme ergaben sich durch kleine Fehler in manchen Skripten, welche sehr schnell und einfach zu beheben waren.

Ein anderes Problem hingegen war das Login-Skript. Man schaffte es erst, sich beim zweiten Mal anzumelden. Zugegeben, manche hätten den Fehler schneller gefunden. Doch ich begab mich erst einmal alleine ohne Hilfe auf Fehlersuche, da ich fest entschlossen war, dass ich den Fehler finde und der Lerneffekt durch das selbstständige Suchen am Größten sein würde.

Doch nach 2 – 3 Tagen gab ich dann auf und suchte im Internet. Prompt fand ich auch eine Idee, woran es liegen könnte: BOM.


BOM: Der Begriff steht für Byte Order Mark und ist einfach gesagt ein Zeichen (U+FEFF) vor einem Datenstrom.


Um es kurz und einfach zu erklären, vor einem

session_start();

darf nichts anderes gesendet werden. Weder ein Leerzeichen, noch ein Komma, auch kein anderes Zeichen wie BOM. Und dort lag der Fehler begraben.

Diesem Problem kann man jedoch ganz leicht aus dem Weg gehen. Man öffnet sein PHP-Skript bspw. unter Notepad++ und stellt unter Kodierung folgendes ein: UTF-8 ohne BOM.

Wenn dies erfolgt ist, sollte der Fehler künftig nicht mehr auftreten.

Ich hoffe ich konnte dem Einen oder Anderen damit helfen und derjenige wird nicht in die Verzweiflung getrieben durch einen solchen Fehler.


Avatar-Foto

Lukas

Als Softwareentwickler und Projektmanager mit einem Master of Science in Wirtschaftsinformatik weiß ich genau, wie die Dinge in der IT zu funktionieren haben. In meinem Blog kombiniere ich seit mehr als 7 Jahren mein Wissen mit meiner Neugier im Bereich Smart Home. Transparenz und Praxisnähe stehen für mich dabei im Vordergrund. Mein Fokus liegt vor allem auf der Software ioBroker, da ich mein eigenes Smart Home damit betreibe. Meine Beiträge basieren somit nicht nur auf theoretischem Know-how, sondern auch auf praktischen Erfahrungen aus meinem vernetzten Zuhause. Mein persönliches Ziel ist es, dir Einblicke in das Smart Home zu geben, die dich wirklich voranbringen.

0 Kommentare

Schreibe einen Kommentar

Avatar-Platzhalter

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert