PHP Login mit $_SESSION unter Edge bzw. IE

Hugo Stiglitz

Cadet 3rd Year
Dabei seit
Aug. 2015
Beiträge
61
#1
Hallo liebe CB-Gemeinde!

Ich befinde mich in mitten eines Web-Projektes, und stolpere momentan über folgendes Problem:

Mein Login Skript startet nur unter Safari, Mozilla und Chrome die $_SESSIONs. Unter Internet Explorer und Edge tut es das nicht.

Kann mir irgendjemand einen Rat oder Tipp geben, weshalb das nicht funktioniert bzw. nur in diesen Browsern nicht?


Bitte wirklich explizit zu diesem Thema antworten.

Danke im Voraus.
 

Soedy

Lt. Commander
Dabei seit
Feb. 2008
Beiträge
1.310
#2
Code-Beispiel? Bei meinen Seiten klappt $_SESSION im IE11 ohne Probleme.
 

Hugo Stiglitz

Cadet 3rd Year
Ersteller dieses Themas
Dabei seit
Aug. 2015
Beiträge
61
#4
Also session_start(); führe ich in der index.php aus. Diese Datei lädt die Seiten per include.

Die ersten Zeilen meiner index.php:

PHP:
ob_start();
#error_reporting(E_ALL & ~ E_NOTICE);
#error_reporting(E_ALL);
session_save_path("temp");
session_start();

	include "inc/sql.cfg.php";
	include "inc/class.php";
	include "inc/functions.php";

Die Login.php:

PHP:
  if(!$_SESSION['uid'] && !$_SESSION['loggedIn']) {
 $email = $db->escape($_POST['email']);
 $pw = md5($_POST['password']);
 
 $countMail = strlen($email);
 $countPw = strlen($_POST['password']);
 

if($countMail>=4 && $countPw>=6) {
	
//check mail
if(filter_var($email, FILTER_VALIDATE_EMAIL)) {
	
$user = $db->query("SELECT * FROM `users` WHERE `email`='".$email."' LIMIT 1");


	if($user) {
		$user = $user[0];
		if($user['email']==$email && $user['password']==$pw) {
			
			if($user['activated']) {
			
			
			$_SESSION['uid'] = $user['id'];
			$_SESSION['loggedIn'] = true;
			$_SESSION['type'] = $user['type'];
			$db->query("UPDATE `users` SET `lastLogIn`='".time()."' WHERE `id`='".$user['id']."'");
			header("Location: /startseite/");
			} else addBee("Ihr Account wurde noch nicht aktiviert.");
			
		} else addBee("Anmeldedaten stimmen nicht überein!");
	
	
	
		
		
		
	} else addBee("Die eingegebene E-Mail Adresse existiert nicht!");

Ich bitte euch ausdrücklich, nur auf meine Frage Antworten zu geben. Der Code ist von mir noch nicht optimiert.
Also bitte nicht auf anderes eingehen.
 

Soedy

Lt. Commander
Dabei seit
Feb. 2008
Beiträge
1.310
#5
Lokal oder auf einem Webserver? Habe das hier gefunden:

There's a bug in Internet explorer in which sessions do not work if the name of the server is not a valid name. For example...if your server is called web_server (_ isn't a valid character), if you call a page which uses sessions like http://web_server/example.php your sessions won't work but sessions will work if you call the script like this
Hat dein Servername unter Umständen einen "_"?

Andernfalls entferne testweise mal aus der index.php

Code:
session_save_path("temp");
 
Top