-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathadd.php
122 lines (102 loc) · 4.5 KB
/
add.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
<?php
include 'config/db_connect.php';
require_once 'templates/header.php';
// Error array erstellten
$buchTitel = $desc = $verlag = $year = '';
$errors = array('buchTitel' => '', 'desc' => '', 'verlag' => '', 'year' => '');
// 'submit' Anfrage stellen
if (isset($_POST['submit'])) {
if (empty($_POST['buchTitel'])) {
$errors['buchTitel'] = 'Bitte einen Buchtitel eingeben!';
} else {
$buchTitel = $_POST['buchTitel'];
if (!preg_match('/^[a-zA-Z\s]+$/', $buchTitel)) {
$errors['buchTitel'] = 'Buchtitel darf nur aus Buchstaben und Leerzeichen bestehen!';
}
}
if (empty($_POST['desc'])) {
$errors['desc'] = 'Bitte eine Kurzbeschreibung eingeben!';
} else {
$desc = $_POST['desc'];
if (!preg_match('/^[a-zA-Z\s]+$/', $desc)) {
$errors['desc'] = 'Kurzbeschreibung darf nur aus Buchstaben und Leerzeichen bestehen!';
}
}
if (empty($_POST['year'])) {
$errors['year'] = 'Bitte Jahr eingeben!';
} else {
// $year = $_POST['year'];
// if (!preg_match('/^[a-zA-Z\s]+$/', $year)) {
// $errors['year'] = 'Bitte nur Nummer';
// }
}
if (!empty($_POST['verlag'])) {
$selected = $_POST['verlag'];
} else {
$errors['verlag'] = 'Sie haben keinen Verlag ausgewählt';
}
// Daten in der Datenbank speichern
if (array_filter($errors)) {
//
} else {
$buchTitel = mysqli_real_escape_string($conn, $_POST['buchTitel']);
$desc = mysqli_real_escape_string($conn, $_POST['desc']);
$verlag = mysqli_real_escape_string($conn, $_POST['verlag']);
$year = mysqli_real_escape_string($conn, $_POST['year']);
// create sql
$sql = "INSERT INTO books(title, description, publisher_id, publishing_year) VALUES('$buchTitel', '$desc', '$verlag', '$year')";
// speichern und überprüfen
if (mysqli_query($conn, $sql)) {
// success
header('Location: index.php');
} else {
// error
echo 'query error:' . mysqli_error($conn);
}
}
}
?>
<div class="container">
<br>
<br>
<br>
<h1>Unsere Bibliothek</h1>
<p>Das hier ist unsere öffentliche Bibliothek. Unten haben wir dir eine Übersicht aller unserer Bücher aufgebaut.</p>
<form action="add.php" method="POST">
<h3>Neues Buch anlegen</h3>
<p>Mit dem unten stehenden Formular kannst du ein neues Buch zu unserer Bibliothek hinzufügen.</p>
<div class="mb-3">
<label for="buchTitel" class="form-label">Buchtitel</label>
<input type="text" class="form-control" id="buchTitel" name="buchTitel" value="<?php echo $buchTitel ?>">
<div class="text-danger"><?php echo $errors['buchTitel']; ?></div>
</div>
<div class="mb-3">
<label for="desc" class="form-label">Kurzbeschreibung</label>
<textarea class="form-control" placeholder="Gebe hier eine kurze Beschreibung des Buches ein (max. 150 Zeichen)." id="desc" name="desc"><?php echo $desc ?></textarea>
<div class="text-danger"><?php echo $errors['desc']; ?></div>
</div>
<div class="mb-3">
<label for="year" class="form-label">Jahr</label>
<input type="text" class="form-control" id="year" name="year" value="<?php echo $year ?>">
<div class="text-danger"><?php echo $errors['year']; ?></div>
</div>
<div class="mb-3">
<label for="verlag" class="form-label">Verlag</label>
<select class="form-select" aria-label="Default select example" name="verlag">
<option disabled selected>Verlag auswählen</option>
<option value="11">Verlag1</option>
<option value="12">Verlag2</option>
<option value="13">Verlag3</option>
</select>
<div class="text-danger"><?php echo $errors['verlag']; ?></div>
</div>
<div class="mb-3 form-check">
<input type="checkbox" class="form-check-input" id="exampleCheck1">
<label class="form-check-label" for="exampleCheck1">Die in diesem Formular eingegebene Daten werden wervendet, um ein neues Buch in unserer Datenbank anzulegen. Die Daten sind durch Absenden des Formular für die Öffentlichkeit einsehbar.</label>
</div>
<button type="submit" class="btn btn-primary" name="submit" value="submit">Neues Buch erstellen</button>
</form>
</div>
<?php
require_once 'templates/footer.php';
?>