From d2f6e02b4bee2294580de92649247afb7f0852dd Mon Sep 17 00:00:00 2001 From: Robert Date: Fri, 24 Nov 2023 20:04:07 +0100 Subject: [PATCH] Alles bis auf 11 2b) --- .idea/dataSources.local.xml | 22 + .idea/dataSources.xml | 12 + .../a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c.xml | 1607 +++++++++++++++++ .../_src_/schema/emensawerbeseite.YLWk-w.meta | 2 + .idea/sqlDataSources.xml | 11 + .idea/sqldialects.xml | 6 + .idea/workspace.xml | 77 + M3/Datenbank_erstellen.txt | 166 ++ M3/Diagram.drawio.png | Bin 0 -> 140800 bytes M3/M3.md | 63 + M3/Werbeseite/besucher.txt | 2 +- M3/Werbeseite/index.php | 53 +- 12 files changed, 2001 insertions(+), 20 deletions(-) create mode 100644 .idea/dataSources.local.xml create mode 100644 .idea/dataSources.xml create mode 100644 .idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c.xml create mode 100644 .idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c/storage_v2/_src_/schema/emensawerbeseite.YLWk-w.meta create mode 100644 .idea/sqlDataSources.xml create mode 100644 .idea/sqldialects.xml create mode 100644 .idea/workspace.xml create mode 100644 M3/Datenbank_erstellen.txt create mode 100644 M3/Diagram.drawio.png diff --git a/.idea/dataSources.local.xml b/.idea/dataSources.local.xml new file mode 100644 index 0000000..509426b --- /dev/null +++ b/.idea/dataSources.local.xml @@ -0,0 +1,22 @@ + + + + + + #@ + ` + + + master_key + root + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml new file mode 100644 index 0000000..16901da --- /dev/null +++ b/.idea/dataSources.xml @@ -0,0 +1,12 @@ + + + + + mariadb + true + org.mariadb.jdbc.Driver + jdbc:mariadb://localhost:3306 + $ProjectFileDir$ + + + \ No newline at end of file diff --git a/.idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c.xml b/.idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c.xml new file mode 100644 index 0000000..135e892 --- /dev/null +++ b/.idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c.xml @@ -0,0 +1,1607 @@ + + + + + lower/lower + InnoDB + |root||root|127.0.0.1|ALTER|G +|root||root|::1|ALTER|G +|root||root|localhost|ALTER|G +|root||root|robert-pc|ALTER|G +|root||root|127.0.0.1|ALTER ROUTINE|G +|root||root|::1|ALTER ROUTINE|G +|root||root|localhost|ALTER ROUTINE|G +|root||root|robert-pc|ALTER ROUTINE|G +|root||root|127.0.0.1|BINLOG ADMIN|G +|root||root|::1|BINLOG ADMIN|G +|root||root|localhost|BINLOG ADMIN|G +|root||root|robert-pc|BINLOG ADMIN|G +|root||root|127.0.0.1|BINLOG MONITOR|G +|root||root|::1|BINLOG MONITOR|G +|root||root|localhost|BINLOG MONITOR|G +|root||root|robert-pc|BINLOG MONITOR|G +|root||root|127.0.0.1|BINLOG REPLAY|G +|root||root|::1|BINLOG REPLAY|G +|root||root|localhost|BINLOG REPLAY|G +|root||root|robert-pc|BINLOG REPLAY|G +|root||root|127.0.0.1|CONNECTION ADMIN|G +|root||root|::1|CONNECTION ADMIN|G +|root||root|localhost|CONNECTION ADMIN|G +|root||root|robert-pc|CONNECTION ADMIN|G +|root||root|127.0.0.1|CREATE|G +|root||root|::1|CREATE|G +|root||root|localhost|CREATE|G +|root||root|robert-pc|CREATE|G +|root||root|127.0.0.1|CREATE ROUTINE|G +|root||root|::1|CREATE ROUTINE|G +|root||root|localhost|CREATE ROUTINE|G +|root||root|robert-pc|CREATE ROUTINE|G +|root||root|127.0.0.1|CREATE TABLESPACE|G +|root||root|::1|CREATE TABLESPACE|G +|root||root|localhost|CREATE TABLESPACE|G +|root||root|robert-pc|CREATE TABLESPACE|G +|root||root|127.0.0.1|CREATE TEMPORARY TABLES|G +|root||root|::1|CREATE TEMPORARY TABLES|G +|root||root|localhost|CREATE TEMPORARY TABLES|G +|root||root|robert-pc|CREATE TEMPORARY TABLES|G +|root||root|127.0.0.1|CREATE USER|G +|root||root|::1|CREATE USER|G +|root||root|localhost|CREATE USER|G +|root||root|robert-pc|CREATE USER|G +|root||root|127.0.0.1|CREATE VIEW|G +|root||root|::1|CREATE VIEW|G +|root||root|localhost|CREATE VIEW|G +|root||root|robert-pc|CREATE VIEW|G +|root||root|127.0.0.1|DELETE|G +|root||root|::1|DELETE|G +|root||root|localhost|DELETE|G +|root||root|robert-pc|DELETE|G +|root||root|127.0.0.1|DELETE HISTORY|G +|root||root|::1|DELETE HISTORY|G +|root||root|localhost|DELETE HISTORY|G +|root||root|robert-pc|DELETE HISTORY|G +|root||root|127.0.0.1|DROP|G +|root||root|::1|DROP|G +|root||root|localhost|DROP|G +|root||root|robert-pc|DROP|G +|root||root|127.0.0.1|EVENT|G +|root||root|::1|EVENT|G +|root||root|localhost|EVENT|G +|root||root|robert-pc|EVENT|G +|root||root|127.0.0.1|EXECUTE|G +|root||root|::1|EXECUTE|G +|root||root|localhost|EXECUTE|G +|root||root|robert-pc|EXECUTE|G +|root||root|127.0.0.1|FEDERATED ADMIN|G +|root||root|::1|FEDERATED ADMIN|G +|root||root|localhost|FEDERATED ADMIN|G +|root||root|robert-pc|FEDERATED ADMIN|G +|root||root|127.0.0.1|FILE|G +|root||root|::1|FILE|G +|root||root|localhost|FILE|G +|root||root|robert-pc|FILE|G +|root||root|127.0.0.1|INDEX|G +|root||root|::1|INDEX|G +|root||root|localhost|INDEX|G +|root||root|robert-pc|INDEX|G +|root||root|127.0.0.1|INSERT|G +|root||root|::1|INSERT|G +|root||root|localhost|INSERT|G +|root||root|robert-pc|INSERT|G +|root||root|127.0.0.1|LOCK TABLES|G +|root||root|::1|LOCK TABLES|G +|root||root|localhost|LOCK TABLES|G +|root||root|robert-pc|LOCK TABLES|G +|root||root|127.0.0.1|PROCESS|G +|root||root|::1|PROCESS|G +|root||root|localhost|PROCESS|G +|root||root|robert-pc|PROCESS|G +|root||root|127.0.0.1|READ_ONLY ADMIN|G +|root||root|::1|READ_ONLY ADMIN|G +|root||root|localhost|READ_ONLY ADMIN|G +|root||root|robert-pc|READ_ONLY ADMIN|G +|root||root|127.0.0.1|REFERENCES|G +|root||root|::1|REFERENCES|G +|root||root|localhost|REFERENCES|G +|root||root|robert-pc|REFERENCES|G +|root||root|127.0.0.1|RELOAD|G +|root||root|::1|RELOAD|G +|root||root|localhost|RELOAD|G +|root||root|robert-pc|RELOAD|G +|root||root|127.0.0.1|REPLICATION MASTER ADMIN|G +|root||root|::1|REPLICATION MASTER ADMIN|G +|root||root|localhost|REPLICATION MASTER ADMIN|G +|root||root|robert-pc|REPLICATION MASTER ADMIN|G +|root||root|127.0.0.1|REPLICATION SLAVE|G +|root||root|::1|REPLICATION SLAVE|G +|root||root|localhost|REPLICATION SLAVE|G +|root||root|robert-pc|REPLICATION SLAVE|G +|root||root|127.0.0.1|REPLICATION SLAVE ADMIN|G +|root||root|::1|REPLICATION SLAVE ADMIN|G +|root||root|localhost|REPLICATION SLAVE ADMIN|G +|root||root|robert-pc|REPLICATION SLAVE ADMIN|G +|root||root|127.0.0.1|SELECT|G +|root||root|::1|SELECT|G +|root||root|localhost|SELECT|G +|root||root|robert-pc|SELECT|G +|root||root|127.0.0.1|SET USER|G +|root||root|::1|SET USER|G +|root||root|localhost|SET USER|G +|root||root|robert-pc|SET USER|G +|root||root|127.0.0.1|SHOW DATABASES|G +|root||root|::1|SHOW DATABASES|G +|root||root|localhost|SHOW DATABASES|G +|root||root|robert-pc|SHOW DATABASES|G +|root||root|127.0.0.1|SHOW VIEW|G +|root||root|::1|SHOW VIEW|G +|root||root|localhost|SHOW VIEW|G +|root||root|robert-pc|SHOW VIEW|G +|root||root|127.0.0.1|SHUTDOWN|G +|root||root|::1|SHUTDOWN|G +|root||root|localhost|SHUTDOWN|G +|root||root|robert-pc|SHUTDOWN|G +|root||root|127.0.0.1|SLAVE MONITOR|G +|root||root|::1|SLAVE MONITOR|G +|root||root|localhost|SLAVE MONITOR|G +|root||root|robert-pc|SLAVE MONITOR|G +|root||root|127.0.0.1|SUPER|G +|root||root|::1|SUPER|G +|root||root|localhost|SUPER|G +|root||root|robert-pc|SUPER|G +|root||root|127.0.0.1|TRIGGER|G +|root||root|::1|TRIGGER|G +|root||root|localhost|TRIGGER|G +|root||root|robert-pc|TRIGGER|G +|root||root|127.0.0.1|UPDATE|G +|root||root|::1|UPDATE|G +|root||root|localhost|UPDATE|G +|root||root|robert-pc|UPDATE|G +|root||root|127.0.0.1|grant option|G +|root||root|::1|grant option|G +|root||root|localhost|grant option|G +|root||root|robert-pc|grant option|G + 11.1.3 + + + armscii8 + + + armscii8 + 1 + + + armscii8 + + + armscii8 + + + ascii + + + ascii + 1 + + + ascii + + + ascii + + + big5 + + + big5 + 1 + + + big5 + + + big5 + + + binary + 1 + + + cp1250 + + + cp1250 + + + cp1250 + + + cp1250 + 1 + + + cp1250 + + + cp1250 + + + cp1250 + + + cp1251 + + + cp1251 + + + cp1251 + 1 + + + cp1251 + + + cp1251 + + + cp1251 + + + cp1251 + + + cp1256 + + + cp1256 + 1 + + + cp1256 + + + cp1256 + + + cp1257 + + + cp1257 + 1 + + + cp1257 + + + cp1257 + + + cp1257 + + + cp850 + + + cp850 + 1 + + + cp850 + + + cp850 + + + cp852 + + + cp852 + 1 + + + cp852 + + + cp852 + + + cp866 + + + cp866 + 1 + + + cp866 + + + cp866 + + + cp932 + + + cp932 + 1 + + + cp932 + + + cp932 + + + dec8 + + + dec8 + + + dec8 + 1 + + + dec8 + + + eucjpms + + + eucjpms + 1 + + + eucjpms + + + eucjpms + + + euckr + + + euckr + 1 + + + euckr + + + euckr + + + gb2312 + + + gb2312 + 1 + + + gb2312 + + + gb2312 + + + gbk + + + gbk + 1 + + + gbk + + + gbk + + + geostd8 + + + geostd8 + 1 + + + geostd8 + + + geostd8 + + + greek + + + greek + 1 + + + greek + + + greek + + + hebrew + + + hebrew + 1 + + + hebrew + + + hebrew + + + hp8 + + + hp8 + 1 + + + hp8 + + + hp8 + + + keybcs2 + + + keybcs2 + 1 + + + keybcs2 + + + keybcs2 + + + koi8r + + + koi8r + 1 + + + koi8r + + + koi8r + + + koi8u + + + koi8u + 1 + + + koi8u + + + koi8u + + + latin1 + + + latin1 + + + latin1 + + + latin1 + + + latin1 + + + latin1 + + + latin1 + + + latin1 + + + latin1 + 1 + + + latin1 + + + latin2 + + + latin2 + + + latin2 + + + latin2 + 1 + + + latin2 + + + latin2 + + + latin2 + + + latin5 + + + latin5 + + + latin5 + 1 + + + latin5 + + + latin7 + + + latin7 + + + latin7 + 1 + + + latin7 + + + latin7 + + + latin7 + + + macce + + + macce + 1 + + + macce + + + macce + + + macroman + + + macroman + 1 + + + macroman + + + macroman + + + sjis + + + sjis + 1 + + + sjis + + + sjis + + + swe7 + + + swe7 + + + swe7 + 1 + + + swe7 + + + tis620 + + + tis620 + + + tis620 + 1 + + + tis620 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + 1 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ucs2 + + + ujis + + + ujis + 1 + + + ujis + + + ujis + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + 1 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16 + + + utf16le + + + utf16le + 1 + + + utf16le + + + utf16le + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + 1 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf32 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + 1 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb3 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + 1 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + utf8mb4 + + + 2023-11-24.21:00:41 + 2023-11-24.19:00:41 + latin1_swedish_ci + + + utf8mb3_general_ci + + + latin1_swedish_ci + + + utf8mb3_general_ci + + + utf8mb3_general_ci + + + localhost + + + 127.0.0.1 + + + ::1 + + + localhost + + + robert-pc + + + InnoDB + latin1_swedish_ci +
+ + InnoDB + latin1_swedish_ci +
+ + InnoDB + latin1_swedish_ci +
+ + InnoDB + latin1_swedish_ci +
+ + InnoDB + latin1_swedish_ci +
+ + InnoDB + latin1_swedish_ci +
+ + char(4)|0s + 1 + 1 + + + varchar(300)|0s + 1 + 2 + + + varchar(20)|0s + 1 + 3 + + + code + btree + 1 + + + 1 + 1 + PRIMARY + + + int(11)|0s + 1 + 1 + + + bigint(20)|0s + 2 + + + id + btree + 1 + + + 1 + 1 + PRIMARY + + + 21 + bigint(20)|0s + 1 + 1 + + + varchar(80)|0s + 1 + 2 + + + varchar(80)|0s + 1 + 3 + + + date|0s + 1 + 4 + + + tinyint(1)|0s + 1 + 5 + + + tinyint(1)|0s + 1 + 6 + + + double|0s + 1 + 7 + + + double|0s + 1 + 8 + + + id + btree + 1 + + + name + btree + 1 + + + 1 + 1 + PRIMARY + + + name + + + char(4)|0s + 1 + + + bigint(20)|0s + 1 + 2 + + + code + code + allergen + + + gericht_id + id + gericht + + + code + btree + + + gericht_id + btree + + + bigint(20)|0s + 1 + 1 + + + bigint(20)|0s + 1 + 2 + + + gericht_id + id + gericht + + + kategorie_id + id + kategorie + + + gericht_id + btree + + + kategorie_id + btree + + + bigint(20)|0s + 1 + 1 + + + varchar(80)|0s + 1 + 2 + + + bigint(20)|0s + 3 + + + varchar(200)|0s + 4 + + + eltern_id + id + kategorie + + + id + btree + 1 + + + eltern_id + btree + + + 1 + 1 + PRIMARY + +
+
\ No newline at end of file diff --git a/.idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c/storage_v2/_src_/schema/emensawerbeseite.YLWk-w.meta b/.idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c/storage_v2/_src_/schema/emensawerbeseite.YLWk-w.meta new file mode 100644 index 0000000..1196377 --- /dev/null +++ b/.idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c/storage_v2/_src_/schema/emensawerbeseite.YLWk-w.meta @@ -0,0 +1,2 @@ +#n:emensawerbeseite +! [1700856041000, 0, null, null, -2147483648, -2147483648] diff --git a/.idea/sqlDataSources.xml b/.idea/sqlDataSources.xml new file mode 100644 index 0000000..219de65 --- /dev/null +++ b/.idea/sqlDataSources.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/sqldialects.xml b/.idea/sqldialects.xml new file mode 100644 index 0000000..0c5bd08 --- /dev/null +++ b/.idea/sqldialects.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 0000000..d41f5cc --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1700736495450 + + + + + + \ No newline at end of file diff --git a/M3/Datenbank_erstellen.txt b/M3/Datenbank_erstellen.txt new file mode 100644 index 0000000..0ca5288 --- /dev/null +++ b/M3/Datenbank_erstellen.txt @@ -0,0 +1,166 @@ +create or replace database emensawerbeseite; + +use emensawerbeseite; + +create table gericht ( + id int8 primary key auto_increment, + name varchar(80) not null unique, + beschreibung varchar(80) not null, + erfasst_am date not null, + vegetarisch boolean not null, + vegan boolean not null, + preisintern double not null, + preisextern double not null +); + + +create table allergen( + code char(4) primary key , + name varchar(300) not null, + typ varchar(20) not null +); + +create table kategorie( + id int8 primary key , + name varchar(80) not null, + eltern_id int8 , + CONSTRAINT FOREIGN KEY (eltern_id) REFERENCES kategorie(id), + bildname varchar(200) +); + +create table gericht_hat_allergen( + code char(4), + CONSTRAINT FOREIGN KEY (code) REFERENCES allergen(code), + gericht_id int8 not null, + CONSTRAINT FOREIGN KEY (gericht_id) REFERENCES gericht(id) +); + +create table gericht_hat_kategorie( + gericht_id int8 not null, + CONSTRAINT FOREIGN KEY (gericht_id) REFERENCES gericht(id), + kategorie_id int8 not null, + CONSTRAINT FOREIGN KEY (kategorie_id) REFERENCES kategorie(id) +); + +create table besucher_counter( + id int primary key, + besucher int8 +); + + +INSERT INTO `besucher_counter` () +VALUES (1,1); + + +INSERT INTO `allergen` (`code`, `name`, `typ`) VALUES + ('a', 'Getreideprodukte', 'Getreide (Gluten)'), + ('a1', 'Weizen', 'Allergen'), + ('a2', 'Roggen', 'Allergen'), + ('a3', 'Gerste', 'Allergen'), + ('a4', 'Dinkel', 'Allergen'), + ('a5', 'Hafer', 'Allergen'), + ('a6', 'Dinkel', 'Allergen'), + ('b', 'Fisch', 'Allergen'), + ('c', 'Krebstiere', 'Allergen'), + ('d', 'Schwefeldioxid/Sulfit', 'Allergen'), + ('e', 'Sellerie', 'Allergen'), + ('f', 'Milch und Laktose', 'Allergen'), + ('f1', 'Butter', 'Allergen'), + ('f2', 'Käse', 'Allergen'), + ('f3', 'Margarine', 'Allergen'), + ('g', 'Sesam', 'Allergen'), + ('h', 'Nüsse', 'Allergen'), + ('h1', 'Mandeln', 'Allergen'), + ('h2', 'Haselnüsse', 'Allergen'), + ('h3', 'Walnüsse', 'Allergen'), + ('i', 'Erdnüsse', 'Allergen'); + +INSERT INTO `gericht` (`id`, `name`, `beschreibung`, `erfasst_am`, `vegan`, `vegetarisch`, `preisintern`, `preisextern`) VALUES + (1, 'Bratkartoffeln mit Speck und Zwiebeln', 'Kartoffeln mit Zwiebeln und gut Speck', '2020-08-25', 0, 0, 2.3, 4), + (3, 'Bratkartoffeln mit Zwiebeln', 'Kartoffeln mit Zwiebeln und ohne Speck', '2020-08-25', 1, 1, 2.3, 4), + (4, 'Grilltofu', 'Fein gewürzt und mariniert', '2020-08-25', 1, 1, 2.5, 4.5), + (5, 'Lasagne', 'Klassisch mit Bolognesesoße und Creme Fraiche', '2020-08-24', 0, 0, 2.5, 4.5), + (6, 'Lasagne vegetarisch', 'Klassisch mit Sojagranulatsoße und Creme Fraiche', '2020-08-24', 0, 1, 2.5, 4.5), + (7, 'Hackbraten', 'Nicht nur für Hacker', '2020-08-25', 0, 0, 2.5, 4), + (8, 'Gemüsepfanne', 'Gesundes aus der Region, deftig angebraten', '2020-08-25', 1, 1, 2.3, 4), + (9, 'Hühnersuppe', 'Suppenhuhn trifft Petersilie', '2020-08-25', 0, 0, 2, 3.5), + (10, 'Forellenfilet', 'mit Kartoffeln und Dilldip', '2020-08-22', 0, 0, 3.8, 5), + (11, 'Kartoffel-Lauch-Suppe', 'der klassische Bauchwärmer mit frischen Kräutern', '2020-08-22', 0, 1, 2, 3), + (12, 'Kassler mit Rosmarinkartoffeln', 'dazu Salat und Senf', '2020-08-23', 0, 0, 3.8, 5.2), + (13, 'Drei Reibekuchen mit Apfelmus', 'grob geriebene Kartoffeln aus der Region', '2020-08-23', 0, 1, 2.5, 4.5), + (14, 'Pilzpfanne', 'die legendäre Pfanne aus Pilzen der Saison', '2020-08-23', 0, 1, 3, 5), + (15, 'Pilzpfanne vegan', 'die legendäre Pfanne aus Pilzen der Saison ohne Käse', '2020-08-24', 1, 1, 3, 5), + (16, 'Käsebrötchen', 'schmeckt vor und nach dem Essen', '2020-08-24', 0, 1, 1, 1.5), + (17, 'Schinkenbrötchen', 'schmeckt auch ohne Hunger', '2020-08-25', 0, 0, 1.25, 1.75), + (18, 'Tomatenbrötchen', 'mit Schnittlauch und Zwiebeln', '2020-08-25', 1, 1, 1, 1.5), + (19, 'Mousse au Chocolat', 'sahnige schweizer Schokolade rundet jedes Essen ab', '2020-08-26', 0, 1, 1.25, 1.75), + (20, 'Suppenkreation á la Chef', 'was verschafft werden muss, gut und günstig', '2020-08-26', 0, 0, 0.5, 0.9); + +INSERT INTO `gericht_hat_allergen` (`code`, `gericht_id`) VALUES + ('h', 1), + ('a3', 1), + ('a4', 1), + ('f1', 3), + ('a6', 3), + ('i', 3), + ('a3', 4), + ('f1', 4), + ('a4', 4), + ('h3', 4), + ('d', 6), + ('h1',7), + ('a2', 7), + ('h3', 7), + ('c', 7), + ('a3', 8), + ('h3', 10), + ('d', 10), + ('f', 10), + ('f2', 12), + ('h1', 12), + ('a5',12), + ('c', 1), + ('a2', 9), + ('i', 14), + ('f1', 1), + ('a1', 15), + ('a4', 15), + ('i', 15), + ('f3', 15), + ('h3', 15); + +INSERT INTO `kategorie` (`id`, `eltern_id`, `name`, `bildname`) VALUES + (1, NULL, 'Aktionen', 'kat_aktionen.png'), + (2, NULL, 'Menus', 'kat_menu.gif'), + (3, 2, 'Hauptspeisen', 'kat_menu_haupt.bmp'), + (4, 2, 'Vorspeisen', 'kat_menu_vor.svg'), + (5, 2, 'Desserts', 'kat_menu_dessert.pic'), + (6, 1, 'Mensastars', 'kat_stars.tif'), + (7, 1, 'Erstiewoche', 'kat_erties.jpg'); + +INSERT INTO `gericht_hat_kategorie` (`kategorie_id`, `gericht_id`) VALUES + (3, 1), (3, 3), (3, 4), (3, 5), (3, 6), (3, 7), (3, 9), (4, 16), (4, 17), (4, 18), (5, 16), (5, 17), (5, 18); + + + + +SELECT DISTINCT name, GROUP_CONCAT(code) FROM gericht g JOIN gericht_hat_allergen a ON g.id = a.gericht_id GROUP BY name ASC; + +SELECT DISTINCT name, GROUP_CONCAT(code) FROM gericht g LEFT JOIN gericht_hat_allergen a ON g.id = a.gericht_id GROUP BY name ASC +; +SELECT DISTINCT allergen.code, GROUP_CONCAT(gericht.name) AS gericht FROM allergen +LEFT JOIN gericht_hat_allergen on allergen.code = gericht_hat_allergen.code +LEFT JOIN gericht ON gericht_hat_allergen.gericht_id = gericht_id +GROUP BY allergen.name +ORDER BY code ASC; + + +SELECT kategorie.name, COUNT(kategorie_id) AS anzahl FROM gericht_hat_kategorie, kategorie +WHERE kategorie.id = gericht_hat_kategorie.kategorie_id +GROUP BY kategorie_id +ORDER BY anzahl ASC; + +SELECT kategorie.name, COUNT(kategorie_id) AS anzahl FROM gericht_hat_kategorie, kategorie +WHERE kategorie.id = gericht_hat_kategorie.kategorie_id AND kategorie_id > 2 +GROUP BY kategorie_id +ORDER BY anzahl ASC; \ No newline at end of file diff --git a/M3/Diagram.drawio.png b/M3/Diagram.drawio.png new file mode 100644 index 0000000000000000000000000000000000000000..f4e2ae9f466362d9a6870a5e3039d0fc3abdc329 GIT binary patch literal 140800 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

4! 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 a+tBB$_MblwuB^d-ipN!tB_2J0_kRH*sYhx6 literal 0 HcmV?d00001 diff --git a/M3/M3.md b/M3/M3.md index d823256..9e265ef 100644 --- a/M3/M3.md +++ b/M3/M3.md @@ -52,4 +52,67 @@ INSERT INTO gericht_hat_kategorie VALUES (21, 3); ``` +# Aufgabe 6 +## Abfragen + +1) Alle Gerichte mit allen zugehörigen Allergenen +``` sql +SELECT DISTINCT name, GROUP_CONCAT(code) FROM gericht g JOIN gericht_hat_allergen a ON g.id = a.gericht_id GROUP BY name ASC; +``` +2) Ändern Sie die vorherige Abfrage so ab, dass alle existierenden Gerichte dargestellt werden (auch wenn keine Allergene enthalten sind). +``` sql +SELECT DISTINCT name, GROUP_CONCAT(code) FROM gericht g LEFT JOIN gericht_hat_allergen a ON g.id = a.gericht_id GROUP BY name ASC; +``` +3) Ändern Sie die vorherige Abfrage so ab, so dass im Ergebnis alle existierenden Allergene dargestellt werden (auch wenn diese nicht einem Gericht zugeordnet sind). +``` sql +SELECT DISTINCT allergen.code, GROUP_CONCAT(gericht.name) AS gericht FROM allergen LEFT JOIN gericht_hat_allergen on allergen.code = gericht_hat_allergen.code LEFT JOIN gericht ON gericht_hat_allergen.gericht_id = gericht_id +GROUP BY allergen.name +ORDER BY code ASC; +``` +4) Die Anzahl der Gerichte pro Kategorie aufsteigend sortiert nach Anzahl. +``` sql +SELECT kategorie.name, COUNT(kategorie_id) AS anzahl FROM gericht_hat_kategorie, kategorie +WHERE kategorie.id = gericht_hat_kategorie.kategorie_id +GROUP BY kategorie_id +ORDER BY anzahl ASC; +``` +5) Ändern Sie die vorherige Abfrage so ab, dass dabei nur die Kategorien dargestellt werden, die mehr als 2 Gerichte besitzen. +``` sql +SELECT kategorie.name, COUNT(kategorie_id) AS anzahl FROM gericht_hat_kategorie, kategorie +WHERE kategorie.id = gericht_hat_kategorie.kategorie_id AND kategorie_id > 2 +GROUP BY kategorie_id +ORDER BY anzahl ASC; +``` + + +# Aufgabe 7 +elter_kategorie: +``` sql +FOREIGN KEY (id) REFERENCES kategorie(id), +``` + +gericht_hat_allergen: +``` sql +code char(4), +FOREIGN KEY (code) REFERENCES allergen(code), +gericht_id int8 not null, +FOREIGN KEY (gericht_id) REFERENCES gericht(id) + +``` + +gericht_hat_kategorie: +``` sql +gericht_id int8 not null, +FOREIGN KEY (gericht_id) REFERENCES gericht(id), +kategorie_id int8 not null, +FOREIGN KEY (kategorie_id) REFERENCES kategorie(id) + +``` +# Aufgabe 11 + +## Relationenmodell + +Kontakte(\_KontaktId\_,Vorname, Nachname, Email, Telefonnummer, Anrede, Typ, ) +Kunde(\_KontaktId\_) +Lieferant(\_KontaktId\_,Wochentag_fuer_Lieferzeitraum) \ No newline at end of file diff --git a/M3/Werbeseite/besucher.txt b/M3/Werbeseite/besucher.txt index 2d73b5e..cc4f7f3 100644 --- a/M3/Werbeseite/besucher.txt +++ b/M3/Werbeseite/besucher.txt @@ -1 +1 @@ -152 \ No newline at end of file +218 \ No newline at end of file diff --git a/M3/Werbeseite/index.php b/M3/Werbeseite/index.php index b4e1fb1..20afe7f 100644 --- a/M3/Werbeseite/index.php +++ b/M3/Werbeseite/index.php @@ -11,11 +11,18 @@ $besucherCount = 0; $newletterCount = 0; // Datenbankanbindung +//$link = mysqli_connect( + //"127.0.0.1", // Host der Datenbank + //"root", // Benutzername zur Anmeldung + //"wm#32", // Passwort + //"emensawerbeseite" // Auswahl der Datenbanken (bzw. des Schemas) +//); + $link = mysqli_connect( - "127.0.0.1", // Host der Datenbank - "root", // Benutzername zur Anmeldung - "wm#32", // Passwort - "emensawerbeseite" // Auswahl der Datenbanken (bzw. des Schemas) +"127.0.0.1", // Host der Datenbank +"root", // Benutzername zur Anmeldung +"admin", // Passwort +"emensawerbeseite" // Auswahl der Datenbanken (bzw. des Schemas) ); if (!$link) { @@ -24,18 +31,16 @@ if (!$link) { } //Besucher counter -if (file_exists("besucher.txt")) { - $besucherFile = fopen("besucher.txt", "r"); - $besucherCount = fgets($besucherFile) + 1; - fclose($besucherFile); - $besucherFile = fopen("besucher.txt", "w"); - fwrite($besucherFile, $besucherCount); - fclose($besucherFile); -} else { - $besucherFile = fopen("besucher.txt", "w"); - fwrite($besucherFile, 1); - fclose($besucherFile); -} + +//Aktuelle Besucher Zahl +$sql_besucher = "SELECT besucher FROM besucher_counter WHERE id=1"; +$result_sql_besucher = mysqli_query($link, $sql_besucher); +$besucher = mysqli_fetch_assoc($result_sql_besucher); + +//Updatet Besucher Zahl +$besucherCount = $besucher["besucher"] + 1; +$sql_besucher = "UPDATE besucher_counter SET besucher =".$besucherCount; +$result_sql_besucher = mysqli_query($link, $sql_besucher); //Newletter counter if (file_exists("newletter.txt")) { @@ -48,6 +53,7 @@ if (file_exists("newletter.txt")) { fclose($newsFile); } +//Newletter Anmeldung if ($_SERVER['REQUEST_METHOD'] == 'POST') { $name = $_POST['name']; $email = $_POST['email']; @@ -55,7 +61,7 @@ if ($_SERVER['REQUEST_METHOD'] == 'POST') { $terms = $_POST['terms']; $errors = array(); - + //Error handling if (empty(trim($name))) { $errors[] = "Bitte geben Sie einen Namen ein."; } @@ -84,7 +90,7 @@ if ($_SERVER['REQUEST_METHOD'] == 'POST') { "language" => $language, "terms" => $terms ); - + //File writing $file = "subscriptions.json"; $current_data = file_exists($file) ? json_decode(file_get_contents($file), true) : array(); $current_data[] = $data; @@ -249,6 +255,7 @@ if ($_SERVER['REQUEST_METHOD'] == 'POST') {

Besuche

Anmeldungen zum Newsletter

-

Speisen

+

+ + Speisen +

Interesse geweckt? Wir informieren