Hallo zusammen,
ich bin langsam wirklich am verzweifeln und erhoffe mir hier eine Lösung.
Verzeiht mir bitte wenn ich hier irgendetwas unübersichtlich gestaltet habe, dass ist mein erster Beitrag in einem Forum.
Zu meinem Problem:
Nach dem Login, werden keine Session Variabel übergeben. Das komische daran ist, dass es auf meinem Localhost xampp (PHP 7.4.24) Server einwandfrei funktioniert.
Da ich das Script auch einmal auf meinem Webserver von Strato (PHP 7.4.25) testen wollte, habe ich es hochgeladen die Änderungen zur Datenbank vorgenommen und erwartet das alles funktioniert.
Leider war dem nicht so...hier einmal der Code:
login.php:
Nachdem der Login dann auch erfolgreich angezeigt wird, und der Online Status in der Datenbank sogar auf 'true' gesetzt wird, bekomme ich in meiner index.php keine Werte ausgegeben...
Habe mir auch die Session über
ausgeben lassen, da erhalte ich den Wert "null". Also denke ich die Session wird nicht übergeben.
Hier der Code meiner Index
index.php:
Wäre echt mega, wenn mir irgendjemand dabei helfen könnte.
Vielen Dank im Voraus!
ich bin langsam wirklich am verzweifeln und erhoffe mir hier eine Lösung.
Verzeiht mir bitte wenn ich hier irgendetwas unübersichtlich gestaltet habe, dass ist mein erster Beitrag in einem Forum.
Zu meinem Problem:
Nach dem Login, werden keine Session Variabel übergeben. Das komische daran ist, dass es auf meinem Localhost xampp (PHP 7.4.24) Server einwandfrei funktioniert.
Da ich das Script auch einmal auf meinem Webserver von Strato (PHP 7.4.25) testen wollte, habe ich es hochgeladen die Änderungen zur Datenbank vorgenommen und erwartet das alles funktioniert.
Leider war dem nicht so...hier einmal der Code:
login.php:
PHP-Code:
<?php
session_start();
include_once('database.php');
global $pdo;
if ($_POST['username'] != "" && $_POST['password'] != "") {
$stmt = $pdo->prepare("SELECT * FROM users WHERE username = ?");
$stmt->execute(array($_POST['username']));
$user = $stmt->fetch();
if($user != false) {
if ($user['password'] == md5($_POST['password'])) {
//Login ist erfolgreich
$statement = $pdo->prepare("UPDATE users SET onlinestatus = ? WHERE id = ?");
if ($statement->execute(array('true', $user['id']))) {
$_SESSION['status'] = true;
$_SESSION['userid'] = $user['id'];
$_SESSION['lockscreen'] = false;
$_SESSION['displayname'] = $user['displayname'];
$_SESSION['profilpicture'] = 'https://example.de/path/' . $user['profilepicture'];
$_SESSION['firstname'] = $user['firstname'];
$_SESSION['lastname'] = $user['lastname'];
$_SESSION['setting_color1'] = $user['setting_color1'];
$_SESSION['setting_color2'] = $user['setting_color2'];
$_SESSION['setting_sidebar'] = $user['setting_sidebar'];
if($user['last_page'] != "" || $user['last_page'] != "null"){
echo $user['last_page'];
}else{
echo $user['https://example.de'];
}
} else {
echo 'fatalerror';
}
} else {
echo 'pwfalse';
}
}else{
echo 'notfound';
}
}else{
echo 'fillerror';
}
Habe mir auch die Session über
PHP-Code:
var_dump($_SESSION);
Hier der Code meiner Index
index.php:
PHP-Code:
<?php
session_start();
include_once('class/database.php');
global $pdo;
if(isset($_SESSION['userid'])){
if ($_SESSION['lockscreen'] == true) {
header('Location: secure/lockscreen/');
}
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') {
$url = "https://";
}else {
$url = "http://";
}
$url.= $_SERVER['HTTP_HOST'];
$url.= $_SERVER['REQUEST_URI'];
$lpstmt = $pdo->prepare("UPDATE users SET last_page = ? WHERE id = ?");
$lpstmt->execute(array($url, $_SESSION['userid']));
}else{
header('Location: secure/anmelden/');
}
?>
Vielen Dank im Voraus!
Kommentar