Anmeldung läuft

This commit is contained in:
Robert
2024-01-17 15:23:48 +01:00
parent aa936198c8
commit d47f00093a
125 changed files with 1459 additions and 4444 deletions

View File

@@ -9,6 +9,8 @@ namespace App\Models;
use Exception;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Session;
@@ -16,48 +18,34 @@ class Benutzer extends Model
{
use HasFactory;
function anmelden(string $email, string $passwort)
function anmelden(string $email, string $passwort): int
{
$link = connectdb();
$sql = "SELECT * FROM benutzer
WHERE (`email` = '$email')";
$result = $link->query($sql);
$row = $result->fetch_assoc();
$sql = "SELECT * FROM benutzer WHERE (`email` = '$email')";
$result = DB::select($sql);
$row = $result[0];
if ($row['passwort'] == NULL) {
if ($row->passwort == NULL) {
$row = 0;
} elseif ($row['passwort'] == $passwort) {
session_start();
} elseif ($row->passwort == $passwort) {
session(["start"=>1]);
mysqli_begin_transaction($link);
$sql = "UPDATE benutzer
SET letzteanmeldung = current_time, anzahlfehler = 0
WHERE email = '$email'";
$link->query($sql);
DB::update("UPDATE benutzer SET letzteanmeldung = current_time, anzahlfehler = 0 WHERE email = '$email'");
// $sql = "UPDATE benutzer SET anzahlanmeldungen = anzahlanmeldungen + 1 WHERE id = " . $row['id'];
$sql = "CALL incrementAnzahlAnmeldungen(" . ($row['id']) . ")";
$link->query($sql);
DB::statement("CALL incrementAnzahlAnmeldungen(" . ($row->id) . ")");
mysqli_commit($link);
$_SESSION['uid'] = session_id();
$_SESSION['login'] = 1;
$_SESSION['name'] = $row['name'];
$_SESSION['email'] = $row['email'];
session(["uid" => session()->getId()]);
session(["login" => 1]);
session(["name" => $row->name]);
session(["email" => $row->email]);
return 1;
} else {
mysqli_begin_transaction($link);
$sql = "UPDATE benutzer
SET anzahlfehler = anzahlfehler+1, letzterfehler = current_time
WHERE email = '$email'";
$link->query($sql);
DB::update("UPDATE benutzer SET anzahlfehler = anzahlfehler+1, letzterfehler = current_time WHERE email = '$email'");
mysqli_commit($link);
}
return 0;