Hallo liebes Forum,
momentan bin ich dabei, ein Anmeldeskript für meine Website zu programmieren. Die Website läuft momentan noch auf PHP 5.6, da ich noch nicht auf "mysqli" umgestiegen bin, und "mysql_..."-Befehle in PHP 7.0 aus einem mir unbekannten Grund nicht wirklich funktionieren.
Ich teste auf einem USB-Webserver, der auch auf Version 5 läuft (Welche genau weiß ich leider nicht, bei USBWebserver 8.6 habe ich keine Informationen dazu gefunden).
Mein Problem ist nun, dass ich ein LogIn-Skript habe, welches bei korrekten Eingaben die ID des jeweiligen Benutzers in der Session ID speichert und anschließend auf den "privaten Bereich" weiterleitet. Dort wird dann als erstes abgefragt, ob bereits eine ID eines Benutzers in der Session ID gespeichert worden ist, wenn nicht, wird man wieder auf die LogIn-Seite weitergeleitet, ansonsten wird einem der "private Bereich" angezeigt.
Auf dem USB-Webserver funktioniert im Gegensatz zur Website alles problemlos, woran könnte das liegen?
Hier der Code dazu:
LogIn-Datei
"Private" Datei:
Ich hoffe ihr könnt mir ein paar Tipps geben, ich weiß einfach nicht mehr weiter.
Noch einen angenehmen Abend wünscht,
phpWeb55.
momentan bin ich dabei, ein Anmeldeskript für meine Website zu programmieren. Die Website läuft momentan noch auf PHP 5.6, da ich noch nicht auf "mysqli" umgestiegen bin, und "mysql_..."-Befehle in PHP 7.0 aus einem mir unbekannten Grund nicht wirklich funktionieren.
Ich teste auf einem USB-Webserver, der auch auf Version 5 läuft (Welche genau weiß ich leider nicht, bei USBWebserver 8.6 habe ich keine Informationen dazu gefunden).
Mein Problem ist nun, dass ich ein LogIn-Skript habe, welches bei korrekten Eingaben die ID des jeweiligen Benutzers in der Session ID speichert und anschließend auf den "privaten Bereich" weiterleitet. Dort wird dann als erstes abgefragt, ob bereits eine ID eines Benutzers in der Session ID gespeichert worden ist, wenn nicht, wird man wieder auf die LogIn-Seite weitergeleitet, ansonsten wird einem der "private Bereich" angezeigt.
Auf dem USB-Webserver funktioniert im Gegensatz zur Website alles problemlos, woran könnte das liegen?
Hier der Code dazu:
LogIn-Datei
PHP-Code:
<?php
//Starten der Session
session_start();
?>
<!DOCTYPE html>
<meta charset = "UTF-8"/>
<html>
<head>
<?php
$vPDO = new PDO('mysql:host=' . $sqlServer . ';dbname=' . $sqlDatenbank, $sqlBenutzername, $sqlPasswort);
?>
</head>
<body>
<!--LogIn-->
<form action = "?login=1" method = "POST">
<input name = "benutzername" placeholder = "Benutzername" type = "benutzername"/><br/>
<input name = "passwort" placeholder = "Passwort" type = "password"/><br/>
<input type = "submit" value = "Anmelden"/><br/>
<br/>
</form>
<?php
if(isset($_GET['login']))
{
$vBenutzername = $_POST['benutzername'];
$vPasswort = $_POST['passwort'];
$sqlBefehl = $vPDO->prepare("SELECT * FROM benutzer WHERE benutzername = :benutzername");
$sqlBefehl->execute(array('benutzername' => $vBenutzername));
$vBenutzer = $sqlBefehl->fetch();
//Überprüfung der Kenndaten
if($vBenutzer !== FALSE && password_verify($vPasswort, $vBenutzer['passwort']))
{
$_SESSION['userid'] = $vBenutzer['id'];
die('<meta http-equiv="refresh" content="0; URL=index.php">');
}
else
{
echo("Benutzername oder Passwort ungültig!");
};
}
?>
</body>
</html>
PHP-Code:
<?php
//Starten der Session und überprüfen der Nutzer ID vom Login
session_start();
//Ist keine Nutzer ID vorhanden, wird der Benutzer zurückgewiesen
if(!isset($_SESSION['userid']))
{
die('
<meta http-equiv="refresh" content="0; URL=privatLogIn.php">
<script type = "text/javascript">
alert("Bitte melden Sie sich zuerst an.");
</script>
');
};
?>
<!DOCTYPE html>
<meta charset = "UTF-8"/>
<html>
//Inhalt
</html>
Noch einen angenehmen Abend wünscht,
phpWeb55.
Kommentar