55 lines
1.4 KiB
PHP
55 lines
1.4 KiB
PHP
<?php
|
|
/**
|
|
* Diese Datei enthält alle SQL Statements für die Tabelle "benutzer"
|
|
*/
|
|
|
|
|
|
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;
|
|
|
|
|
|
|
|
class Benutzer extends Model
|
|
{
|
|
use HasFactory;
|
|
|
|
function anmelden(string $email, string $passwort): int
|
|
{
|
|
|
|
$sql = "SELECT * FROM benutzer WHERE (`email` = '$email')";
|
|
$result = DB::select($sql);
|
|
$row = $result[0];
|
|
|
|
if ($row->passwort == NULL) {
|
|
$row = 0;
|
|
} elseif ($row->passwort == $passwort) {
|
|
session(["start"=>1]);
|
|
|
|
DB::update("UPDATE benutzer SET letzteanmeldung = current_time, anzahlfehler = 0 WHERE email = '$email'");
|
|
|
|
|
|
// $sql = "UPDATE benutzer SET anzahlanmeldungen = anzahlanmeldungen + 1 WHERE id = " . $row['id'];
|
|
DB::statement("CALL incrementAnzahlAnmeldungen(" . ($row->id) . ")");
|
|
|
|
session(["uid" => session()->getId()]);
|
|
session(["login" => 1]);
|
|
session(["name" => $row->name]);
|
|
session(["email" => $row->email]);
|
|
session(["benutzer_id"=> $row->id]);
|
|
return 1;
|
|
} else {
|
|
|
|
|
|
DB::update("UPDATE benutzer SET anzahlfehler = anzahlfehler+1, letzterfehler = current_time WHERE email = '$email'");
|
|
|
|
|
|
}
|
|
return 0;
|
|
}
|
|
}
|