Löschen-Button hinzugefügt, README aktualisiert, PHP Warning entfernt

This commit is contained in:
fds2610 2026-01-25 10:55:56 +01:00
parent 2f4c608de7
commit 7099eed7c6
3 changed files with 51 additions and 4 deletions

View file

@ -2,13 +2,18 @@
Dokumentiere Ausgaben on-the-go als Webapp Dokumentiere Ausgaben on-the-go als Webapp
V.1.1 (geplant) ## V.1.2
- [X] Einträge löschen als Button im Editier-Fenster (UX dient der Prävention versehentlichen löschens auf der Startseite)
## V.1.1
Admin-Funktion: Admin-Funktion:
- in der config.php kann vorkonfiguriert werden, welchen User_ids erlaubt ist, weitere User anzulegen. - in der config.php kann vorkonfiguriert werden, welchen User_ids erlaubt ist, weitere User anzulegen.
Auswertungen: Auswertungen:
- [X] CSV Export des ausgewählten Monats in der Kategorieübersicht
- [X] Monatssumme je Kategorie - [X] Monatssumme je Kategorie
- [X] Filter monatsweise - [X] Filter monatsweise
- [X] monate durchblättern zurück und vor, defaut aktueller Monat - [X] monate durchblättern zurück und vor, defaut aktueller Monat
@ -17,7 +22,7 @@ Auswertungen:
- [X] Filter monatssummen - [X] Filter monatssummen
- [X] monate durchblättern zurück und vor, defaut aktueller Monat - [X] monate durchblättern zurück und vor, defaut aktueller Monat
V.1.0 ## V.1.0
Das erste Release enthält: Das erste Release enthält:
@ -66,7 +71,7 @@ Weiteres
- [x] Betrag deutsche Zahlen und rechtsbündig - [x] Betrag deutsche Zahlen und rechtsbündig
- [x] Kommentarfeld freitext drei Zeilen - [x] Kommentarfeld freitext drei Zeilen
Installationshinweise: # Installationshinweise:
1. webserver & DB server aufsetzen 1. webserver & DB server aufsetzen
2. init.sql script als berechtigter DB user laufen lassen (meist root), der Datenbanken anlegen und Berechtigungen setzen kann. 2. init.sql script als berechtigter DB user laufen lassen (meist root), der Datenbanken anlegen und Berechtigungen setzen kann.
@ -75,5 +80,7 @@ Installationshinweise:
5. webroot (z.B. http://localhost/) aufrufen und mit user test / test123 einloggen. 5. webroot (z.B. http://localhost/) aufrufen und mit user test / test123 einloggen.
6. obige Schritte sind nur das Nötigste, um die Funktionalität herzustellen. Insbesondere bei Zugriffsmöglichkeiten aus dem Internet ist es wichtig, https Protokolle, vpns und/oder ggfs zusätzliche Sicherungsmassnahmen (hardening) zu ergreifen. 6. obige Schritte sind nur das Nötigste, um die Funktionalität herzustellen. Insbesondere bei Zugriffsmöglichkeiten aus dem Internet ist es wichtig, https Protokolle, vpns und/oder ggfs zusätzliche Sicherungsmassnahmen (hardening) zu ergreifen.
Ausserdem solltet Ihr User registrieren und ggfs. die Kategorien anpassen.
Das sollte alles sein. Bitte erstellt ein Bug-Ticket, wenn ich etwas übersehen habe. Gerne könnt Ihr auch Pull-Requests erstellen. Das sollte alles sein. Bitte erstellt ein Bug-Ticket, wenn ich etwas übersehen habe. Gerne könnt Ihr auch Pull-Requests erstellen.

View file

@ -312,6 +312,28 @@ tr:hover {
background: var(--primary-hover); background: var(--primary-hover);
} }
.btn-xr1l {
position: fixed;
bottom: 30px;
right: 150px;
background: var(--primary-color);
color: white;
padding: 12px 20px;
text-align: center;
text-decoration: none;
border: none;
border-radius: var(--border-radius);
font-weight: 600;
box-shadow: var(--box-shadow);
transition: var(--transition);
cursor: pointer;
z-index: 1000;
}
.btn-xr1l:hover {
background: var(--primary-hover);
}
/* Anpassung für mobile Geräte */ /* Anpassung für mobile Geräte */
@media (max-width: 768px) { @media (max-width: 768px) {
.btn-submit { .btn-submit {

View file

@ -38,8 +38,23 @@ try {
$data_saved = "Fehler: Eintrag konnte nicht geladen werden."; $data_saved = "Fehler: Eintrag konnte nicht geladen werden.";
} }
// Lösch-Logik
if (isset($_POST['delete'])) {
try {
$stmt = $pdo->prepare("DELETE FROM entries WHERE id = :id");
$stmt->bindParam(':id', $entry_id, PDO::PARAM_INT);
$stmt->execute();
echo '<meta http-equiv="refresh" content="5;url=dashboard.php">Eintrag wurde gelöscht. Weiterleitung…'; exit;
// header('Location: dashboard.php');
exit;
} catch (PDOException $e) {
$data_saved = "Fehler: " . $e->getMessage();
}
}
// Speicher-Logik // Speicher-Logik
if (!empty($_POST)) { if (!empty($_POST) && !isset($_POST['delete'])) {
$date = isset($_POST['date']) ? trim($_POST['date']) : ''; $date = isset($_POST['date']) ? trim($_POST['date']) : '';
$user_id = isset($_POST['user_id']) ? trim($_POST['user_id']) : ''; $user_id = isset($_POST['user_id']) ? trim($_POST['user_id']) : '';
$person = isset($_POST['person']) ? $_POST['person'] : []; $person = isset($_POST['person']) ? $_POST['person'] : [];
@ -205,7 +220,10 @@ foreach ($users as $user):
<div class="form-group"> <div class="form-group">
<input type="text" name="note" value="<?= htmlspecialchars($entry['note']) ?>" placeholder="Hinweis"> <input type="text" name="note" value="<?= htmlspecialchars($entry['note']) ?>" placeholder="Hinweis">
</div> </div>
<div class="button-group">
<button type="submit" name="delete" class="btn-xr1l" style="background-color: #d9534f;">Löschen</button>
<button type="submit" class="btn-xr">Speichern</button> <button type="submit" class="btn-xr">Speichern</button>
</div>
</form> </form>
</div> </div>