Files
DBWT/M6/emensamobile/app/Models/Gerichte.php
2024-01-19 16:59:27 +01:00

92 lines
2.8 KiB
PHP

<?php
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 Gerichte extends Model {
use HasFactory;
function db_gericht_select_karte(){
try {
$sql_gerichte = "SELECT * FROM gericht ORDER BY RAND() LIMIT 5";
$result_sql_gerichte = DB::select($sql_gerichte);
$result_sql_gerichte1 = DB::select($sql_gerichte);
$verwendete_allergene_code = [];
$verwendete_allergene_string = "";
foreach ($result_sql_gerichte as $row_gerichte) {
// Abfrage der vorhandenen Allergene im aktuellen Gericht
$sql_gericht_hat_allergene = "SELECT * FROM gericht_hat_allergen WHERE gericht_id=" . $row_gerichte->id;
$result_sql_gericht_hat_allergene = DB::select($sql_gericht_hat_allergene);
$allergene = "";
foreach ($result_sql_gericht_hat_allergene as $row_allergene) {
$allergene .= $row_allergene->code . ", ";
$drin = 0;
foreach ($verwendete_allergene_code as $verwendet){
if ($verwendet == $row_allergene->code){
$drin =1;
}
}
if ($drin == 0) {
$verwendete_allergene_code[] = $row_allergene->code;
}
}
}
$sql_allergen = "SELECT code, name FROM allergen";
$result_sql_allergen = DB::select($sql_allergen);
$data = [
"allergene" => $verwendete_allergene_string,
"result_sql_allergen" => $result_sql_allergen,
"verwendete_allergene_code" => $verwendete_allergene_code,
"result_sql_gerichte" => $result_sql_gerichte1,
"allergene1" => $allergene
];
return $data;
} catch (Exception $ex) {
$data = array(
'id' => '-1',
'error' => true,
'name' => 'Datenbankfehler ' . $ex->getCode(),
'beschreibung' => $ex->getMessage());
return $data;
}
}
// Überflüssig
function db_gericht_bewertung(int $id){
$sql_gerichte = "SELECT gericht.name, gericht.bildname FROM gericht WHERE id =". $id;
$result_sql_gerichte = DB::select($sql_gerichte);
return $result_sql_gerichte;
}
//Überflüssig
function db_gericht_name(int $id){
$sql_gerichte = "SELECT gericht.name FROM gericht WHERE id =". $id;
$result_sql_gerichte = DB::select($sql_gerichte);
return $result_sql_gerichte;
}
}