Kein Eintrag in Datenbank mit UPDATE-Funktion
Zum lernen und üben habe ich mir eine kleine Tabelle in einer Datenbank erstellt. In dieser gibt es die Spaltennamen „Name“ und Bemerkungen“
Mit einem HTML-Formular möchte ich jetzt in die Spalte „Bemerkung“ einen Eintrag erstellen. In das Formular trägt man den Namen ein und die entsprechende Bemerkung. Diese beiden Werte werden dann zur Datei notiz.php übertragen. Anschließend werden aus den übergebenen Werten Strings gebildet und sollen per UPDATE-Funktion in die Datenbank zum entsprechenden Namen eingetragen werden. Beim Ausführen der Funktion erhalte ich keine Fehlermeldung, aber es entsteht auch kein Eintrag in der Datenbank.(Eine Verbindung zur Datenbank besteht) Leider kann ich mir nicht erklären, warum das so ist. Kann mir jemand helfen ? Vielen Dank.
Mit einem HTML-Formular möchte ich jetzt in die Spalte „Bemerkung“ einen Eintrag erstellen. In das Formular trägt man den Namen ein und die entsprechende Bemerkung. Diese beiden Werte werden dann zur Datei notiz.php übertragen. Anschließend werden aus den übergebenen Werten Strings gebildet und sollen per UPDATE-Funktion in die Datenbank zum entsprechenden Namen eingetragen werden. Beim Ausführen der Funktion erhalte ich keine Fehlermeldung, aber es entsteht auch kein Eintrag in der Datenbank.(Eine Verbindung zur Datenbank besteht) Leider kann ich mir nicht erklären, warum das so ist. Kann mir jemand helfen ? Vielen Dank.
<?php
// Zum Aufbau der Verbindung zur Datenbank
$_db_host = "localhost:3307";
$_db_username = "xxxxxx";
$_db_passwort = "xxxxxxxxx";
$_db_name = "personal_uebung";
$connect = mysqli_connect ($_db_host, $_db_username, $_db_passwort, $_db_name);
if ( $connect )
{
echo 'Verbindung erfolgreich: ';
}
else
{
echo 'hat nicht geklappt';
}
$notiz = $_POST["notiz"];
$name = $_POST["Familienname"];
$update = "UPDATE 'personal_kpi' SET Bemerkungen = $notiz where name = $name";
mysqli_query($connect, $update);
?>
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 593272
Url: https://administrator.de/contentid/593272
Ausgedruckt am: 22.11.2024 um 03:11 Uhr
5 Kommentare
Neuester Kommentar
Nein, das war's nicht.
Probier doch mal aus was passiert, wenn du ins Eingabefeld für "notiz" exakt folgendes einträgst:
Und wenn du deine Tabelle aus dem hoffentlich vorher angelegten Backup wiederhergestellt hast, gewöhnst du dir am besten an, für wirklich jede Variable, die du in SQL-Statements verwendest, die Funktion mysqli_real_escape_string() zu verwenden
Probier doch mal aus was passiert, wenn du ins Eingabefeld für "notiz" exakt folgendes einträgst:
Beispiel für SQL-Injection'; TRUNCATE personal_kpi; --
Und wenn du deine Tabelle aus dem hoffentlich vorher angelegten Backup wiederhergestellt hast, gewöhnst du dir am besten an, für wirklich jede Variable, die du in SQL-Statements verwendest, die Funktion mysqli_real_escape_string() zu verwenden