Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- if(!$_SESSION['logged_in'])
- header("Location: login.html");
- define('MD5_ENCRYPT', false); // Aktiviert Verschlüsselung für Passwort. Wenn "true" gesetzt, müssen Passwörter von $usrdata md5-verschlüsselt vorliegen. Standard: false
- define('SUCCESS_URL', 'index.php'); // URL, zu welcher nach erfolgreichen Login umgeleitet wird.
- define('LOGIN_FORM_URL', 'login.html'); // URL mit Anmeldeformular
- // Array mit Benutzerdaten: Besteht aus Array-Elementen mit paarweisen Benutzernamen und Passwörtern
- $db = mysqli_connect("", "", "", "") or die ("Es konnte keine Verbindung zur Datenbank hergestellt werden:" . mysqli_error());
- if(!$db){
- exit("Verbindungsfehler:". mysqli_connect_error());
- }
- $dbname = '';
- mysqli_select_db($db, $dbname) or die("Die Selection der Datenbank hat nicht funktioniert:" . mysqli_error());
- $sql = "SELECT * FROM `User`";
- $db_erg = mysqli_query( $db, $sql );
- $usrdata = array(
- while ($zeile = mysqli_fetch_array( $db_erg, MYSQL_ASSOC)){
- array(
- "usr" => "$zeile['Username']",
- "pwd" => "$zeile['Passwort']"
- ),
- }
- );
- mysqli_free_result( $db_erg );
- mysqli_close($db)
- header("Content-Type: text/html; charset=utf-8"); // Melde Browser die verwendete Zeichenkodierung
- // PHP-Session starten und aktuellen Stand abfragen
- session_start();
- $_SESSION['logged_in'] = (isset($_SESSION['logged_in']) && $_SESSION['logged_in'] === true) ? true : false;
- $_SESSION['usr'] = (isset($_SESSION['usr'])) ? $_SESSION['usr'] : '';
- $error = array();
- if(!isset($_POST['login'])){
- header('Location: '.LOGIN_FORM_URL);
- }else{
- $usr = (!empty($_POST['user']) && trim($_POST['user']) != '') ? $_POST['user'] : false;
- $pwd = (!empty($_POST['password']) && trim($_POST['password']) != '') ? $_POST['password'] : false;
- if(!$usr || !$pwd){
- if(count($error) == 0)
- $error[] = "Bitte geben Sie Benutzername und Passwort ein.";
- }else{
- $pwd = (MD5_ENCRYPT === true) ? md5($pwd) : $pwd; // Passwort eingabe MD5-encrypten, falls Option gesetzt ist
- foreach($usrdata as $ud){ // Benutzer-Liste durchlaufen und je mit Formular-Eingaben vergleichen
- if($usr != $ud['usr'] || $pwd != $ud['pwd']){
- if(count($error) == 0)
- $error[] = "Benutzername und/oder Passwort nicht korrekt.";
- }else{
- $_SESSION['logged_in'] = true;
- $_SESSION['usr'] = $usr;
- header('Location: '.SUCCESS_URL);
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement