From 6b3e5a61e32cf4ed721938298fbb51d4dc324c11 Mon Sep 17 00:00:00 2001 From: Christopher Date: Mon, 27 Apr 2026 09:05:37 +0000 Subject: [PATCH] Fehlerbereinigung Datenbank (pw varchar laenge) Registrierung und Login --- projekt_v1/db.inc.php | 2 +- projekt_v1/login.php | 3 ++- projekt_v1/regfehler.php | 1 + projekt_v1/registrieren.php | 20 +++++++++++++------- 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/projekt_v1/db.inc.php b/projekt_v1/db.inc.php index 6848f0d..47dd56c 100644 --- a/projekt_v1/db.inc.php +++ b/projekt_v1/db.inc.php @@ -6,7 +6,7 @@ $dbhost = 'localhost'; $dbname = 'sozialesnetzwerk'; try { - $pdo = new PDO ("mysql:dbname=$dbname;host=$dbhost;charset=utf8", $dbuser, $dbpw); + $pdo = new PDO ("mysql:dbname=$dbname;host=$dbhost", $dbuser, $dbpw); } catch (PDOException $e) { die ($e->getMessage()); } diff --git a/projekt_v1/login.php b/projekt_v1/login.php index 09ea37d..2a7753a 100644 --- a/projekt_v1/login.php +++ b/projekt_v1/login.php @@ -70,7 +70,8 @@ session_start(); private function anmelden_db() { $vorhanden = false; require("db.inc.php"); - if ($stmt = $pdo->prepare("SELECT userid, pw FROM mitglider")) { + if ($stmt = $pdo->prepare("SELECT userid, pw FROM mitglieder")) + { $stmt -> execute(); while ($row = $stmt -> fetch()) { if (isset($_POST["userid"]) && $_POST["userid"] == $row['userid'] && md5($_POST["pw"]) == $row['pw']); { diff --git a/projekt_v1/regfehler.php b/projekt_v1/regfehler.php index b8f67e8..6ec199c 100644 --- a/projekt_v1/regfehler.php +++ b/projekt_v1/regfehler.php @@ -27,5 +27,6 @@ if (0 > version_compare(PHP_VERSION, '7')) { $regobj -> fehler() ?> + diff --git a/projekt_v1/registrieren.php b/projekt_v1/registrieren.php index c0c0076..a9bc42d 100644 --- a/projekt_v1/registrieren.php +++ b/projekt_v1/registrieren.php @@ -1,4 +1,6 @@ version_compare(PHP_VERSION, '7')) { die('

Für diese Anwendung ' . 'ist mindestens PHP 7 notwendig'); } -session_start(); - ?> @@ -66,7 +66,7 @@ session_start(); //Kritische Zeichen aus der freien Eingabe der Zusatzinfos eleminieren - $_POST['zusatzinfos'] = preg_replace("/[<|>|$|%|&|§]/", "#", $_POST['zusatzinfos']); + $_POST['zusatzinfos'] = preg_replace("/[<>$\%&§]/", "#", $_POST['zusatzinfos']); // Testausgaben für den derzeitigen Stand des Projekts echo "Die Eingaben:
"; @@ -84,13 +84,17 @@ session_start(); private function eintragen_db() { require ("db.inc.php"); try { - $stmt = $pdo->prepare("INSERT INTO mitglieder (name, vorname, email, zusatzinfos, rolle, userid, pw) VALUES (:name, :vorname, :email, :zusatzinfo, :rolle, :userid, :pw)"); - $stmt->execute(array( + $stmt = $pdo->prepare("INSERT INTO mitglieder ( + name, vorname, email, zusatzinfos, rolle, userid, pw) + VALUES (:name, :vorname, :email, :zusatzinfos, :rolle, + :userid, :pw)"); + + $stmt->execute(array( ':name' => $_POST["name"], ':vorname' => $_POST["vorname"], ':email' => $_POST["email"], ':zusatzinfos' => $_POST["zusatzinfos"], - ':rolle' => $_POST["rolle"], + ':rolle' => "Mitglied", ':userid' => $_POST["userid"], ':pw' => md5($_POST["pw"]) )); @@ -100,7 +104,9 @@ session_start(); $dat = "index.php"; } catch (PDOException $e) { + error_log("Registrierungsfehler: " . $e->getMessage()); // Log für Admins $dat = "regfehler.php"; + } header("Location: $dat"); @@ -109,7 +115,7 @@ session_start(); } $regobj = new Registrierung(); if (sizeof($_POST) > 0) { - $regobj->registrieren(); + $regobj -> registrieren(); } ?>