Hallo zusammen,
ich habe mich soeben hier angemeldet, da ich bei einem Problem nicht weiterkomme und auf eure Hilfe hoffe. Ich habe mir auch ein Buch gekauft un die entsprechenden Kapitel durchgearbeitet, aber ich komme alleine nicht weiter.
Ich würde gerne einen Datensatz einer MySQL-Datenbank bearbeiten. Es geht um 1 Textfeld und zwei Ja/Nein-Radiobuttons.
Ich nutze PDO und die Datensatzauswahl per URl-Parameter gelingt schonmal.
Mein Script sieht momentan so aus.
Wie bekomme ich es hin, das der Inhalt des Texfeldes und der beiden Radiobuttons ausgelesen, geändert und per Button wieder gespeichert werden?
Über einen Tipp würde ich mich sehr freuen.
Vielen Dank und viele Grüße
Frank
ich habe mich soeben hier angemeldet, da ich bei einem Problem nicht weiterkomme und auf eure Hilfe hoffe. Ich habe mir auch ein Buch gekauft un die entsprechenden Kapitel durchgearbeitet, aber ich komme alleine nicht weiter.
Ich würde gerne einen Datensatz einer MySQL-Datenbank bearbeiten. Es geht um 1 Textfeld und zwei Ja/Nein-Radiobuttons.
Ich nutze PDO und die Datensatzauswahl per URl-Parameter gelingt schonmal.
Mein Script sieht momentan so aus.
PHP-Code:
<?php
$pdo = new PDO('mysql:host=localhost;dbname=xxx;charset=utf8mb4', 'xxx', 'xxx');
if(isset($_GET['id'])) { //ID aus URL-Parameter auslesen
$id = $_GET['id'];
} else {
die("Fehler!");
}
$idclean = htmlspecialchars($id); // Sonderzeichen aus ID entfernen
$muster = "/^[0-9]{3,5}$/"; //ID Prüfen,ob sie nur aus 3-5-stelligen Zahl besteht und entsprechenden Datensatz einlesen
if(preg_match($muster, $idclean)) {
$sql = "SELECT id, F35, F37, F39, F119, F120 FROM mustertabelle WHERE F117 = 'Ja' AND F118 = 'Nein' AND id = $id";
} else {
die("Fehler!");
}
foreach ($pdo->query($sql) as $row) {
$nr = $row['id'];
$name = $row['F35'];
$beschreibung = $row['F37'];
$bemerkung = $row['F39'];
}
?><!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
<title>test</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
<link href="css.css" rel="stylesheet">
</head>
<body>
<h2>Detailansicht <?php echo $nr ?></h2> <!-- Nicht änderbar -->
<table class="table table-borderless">
<tbody>
<tr class="align-middle">
<th scope="row">Name:</th> <!-- Nicht änderbar -->
<td><?php echo $name ?></td>
</tr>
<tr>
<th scope="row">Beschreibung:</th> <!-- Nicht änderbar -->
<td><?php echo $beschreibung ?></td>
</tr>
<tr>
<th scope="row">Bemerkung:</th> <!-- Änderbar -->
<td>
<textarea class="form-control" id="TextareaBemerkung" rows="5"><?php echo $bemerkung ?></textarea>
</td>
</tr>
<tr>
<th scope="row">Radiobutton Feld F119 Wert Ja/Nein</th> <!-- Änderbar -->
<td>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="inlineRadioOptions" id="inlineRadio1" value="Ja">
<label class="form-check-label" for="inlineRadio1">Ja</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="inlineRadioOptions" id="inlineRadio2" value="Nein">
<label class="form-check-label" for="inlineRadio2">Nein</label>
</div>
</td>
</tr>
<tr>
<th scope="row">Radiobutton Feld F120 Wert Ja/Nein</th> <!-- Änderbar -->
<td>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="inlineRadioOptions" id="inlineRadio3" value="Ja">
<label class="form-check-label" for="inlineRadio3">Ja</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="inlineRadioOptions" id="inlineRadio4" value="Nein">
<label class="form-check-label" for="inlineRadio4">Nein</label>
</div>
</td>
</tr>
</tbody>
</table>
<a href="index.php"><button class="btn btn-primary" type="button">Speichern und zurück zur Übersicht</button></a> <!-- Eingaben speichern und zurück zur Datensatzauswahl -->
</body>
</html>
Über einen Tipp würde ich mich sehr freuen.
Vielen Dank und viele Grüße
Frank
Kommentar