· 9 years ago · Apr 25, 2017, 02:22 PM
1<?php
2$host = "localhost";
3$user = "root";
4$pass = "";
5
6$dbname = "auto_vermietung";
7
8ini_set("display_errors", 0);
9
10//connect to database or exit
11$conn = mysql_connect($host, $user, $pass) or exit("Die angegebene Datenbank Host konnte nicht angesprochen werden. Bitte <b>config.php</b> überprüfen!<br>");
12
13//create db if not exists
14mysql_query("CREATE DATABASE IF NOT EXISTS " . $dbname, $conn) or exit("Die Datanbank konnte nicht erstellt werden. Bitte <b>config.php</b> überprüfen!<br>");
15
16//select db
17mysql_select_db($dbname, $conn) or exit("Die angegebene Datenbank konnte nicht ausgewählt werden. Bitte <b>config.php</b> überprüfen.<br>");
18
19//create tables if not exists
20mysql_query(
21"CREATE TABLE IF NOT EXISTS marken (".
22" id int(10) NOT NULL AUTO_INCREMENT,".
23" markename varchar(150),".
24" PRIMARY KEY(id)".
25")") or exit("Die Tabelle 'marken' konnte nicht erstellt werden.<br>");
26echo "Die Tabelle 'marken' wurde erfolgreich erstellt.<br>";
27
28mysql_query(
29"CREATE TABLE IF NOT EXISTS autos (".
30" id int(10) NOT NULL AUTO_INCREMENT,".
31" marke int(10) NOT NULL,".
32" model varchar(150) NOT NULL,".
33" erstzulassung bigint(20) NOT NULL,".
34" kmstand int(10) NOT NULL,".
35" flag1 tinyint(1) NOT NULL default 0,".
36" PRIMARY KEY(id)".
37")") or exit("Die Tabelle 'autos' konnte nicht erstellt werden.<br>");
38//flag1 gibt an ob das auto ausgeliehen ist oder nicht
39//dient zur erleichterung der abfrage
40echo "Die Tabelle 'autos' wurde erfolgreich erstellt.<br>";
41
42mysql_query(
43"CREATE TABLE IF NOT EXISTS kunden (".
44" id int(10) NOT NULL AUTO_INCREMENT,".
45" vn varchar(40) NOT NULL,".
46" nn varchar(40) NOT NULL,".
47" plz varchar(10) NOT NULL,".
48" ort varchar(150) NOT NULL,".
49" straße varchar(150) NOT NULL,".
50" hr varchar(10) NOT NULL,".
51" fuhrerschein_flag int(8),".
52" last_fuhrerschein_view bigint(20) NOT NULL,".
53" PRIMARY KEY(id)".
54")") or exit("Die Tabelle 'kunden' konnte nicht erstellt werden.<br>");
55/*
56 * fuhrerschein_flag
57Short Value Binary
58AM 1 0 0000 0000 0000 0001
59A1 2 0 0000 0000 0000 0010
60A2 4 0 0000 0000 0000 0100
61A 8 0 0000 0000 0000 1000
62B1 16 0 0000 0000 0001 0000
63B 32 0 0000 0000 0010 0000
64C1 64 0 0000 0000 0100 0000
65C 128 0 0000 0000 1000 0000
66D1 256 0 0000 0001 0000 0000
67D 512 0 0000 0010 0000 0000
68BE 1024 0 0000 0100 0000 0000
69C1E 2048 0 0000 1000 0000 0000
70CE 4096 0 0001 0000 0000 0000
71D1E 8192 0 0010 0000 0000 0000
72DE 16384 0 0100 0000 0000 0000
73L 32768 0 1000 0000 0000 0000
74T 65536 1 0000 0000 0000 0000
75
76Bsp.: Kunde hat AM, A1, B, D & L
77flag = AM + A1 + B + D + L
78 = 1 + 2 + 32 + 512 + 32768
79 = 33315
80
81 * last_fuhrerschein_view gibt an wann der führerschein das letzte mal
82 gesehen wurde (alle 3 Monate neue vorlage um evtl. veränderungen
83 zu bekommen)
84*/
85echo "Die Tabelle 'kunden' wurde erfolgreich erstellt.<br>";
86
87mysql_query(
88"CREATE TABLE IF NOT EXISTS kunde_ausgeliehen (".
89" kunden_id int(10) NOT NULL,".
90" auto_id int(10) NOT NULL,".
91" ausgeliehen_am bigint(20) NOT NULL,".
92" ruckgabe_am bigint(20) default NULL".
93")") or exit("Die Tabelle 'kunde_ausgeliehen' konnte nicht erstellt werden.<br>");
94echo "Die Tabelle 'kunde_ausgeliehen' wurde erfolgreich erstellt.<br>";
95
96mysql_close($conn);
97echo "Die Datenbank wurde erfolgreich erstellt.";
98?>