Tach!
die Antwort hilft nir einwenig im Bezug auf Sicherheit, aber nicht auf die Frage nach dem "Warum wird es nicht in die Datenbank übernommen/gespeichert?", das ist mein grösstes Problem, natürlich kannes sein das du jetzt die Lösung schon mit geschrieben hast(nur ich es nicht verstehe).
Du beziehst dich auf den ersten Teil seiner Antwort (der Kontextwechsel ist übrigens auch im HTML-Teil nicht beachtet). Der zweite (und dritte) Teil der Antwort sagte aus, dass du Debugging betreiben sollst. Wenn Wunsch und Wirklichkeit nicht übereinstimmen, muss man dem auf den Grund gehen. Kontrollausgaben (mit var_dump()) aller beteiligten Variablen und der Funktionsergebnisse sind immer noch sehr effektive und einfache Methoden zuf Ursachensuche. Ebenfalls hat es sich bewehrt, beim Entwickeln das error_reporting auf E_ALL (und display_errors auf on) stehen zu haben, damit sämtliche Hinweise angezeigt bekommt.
Wenn du nicht weißt, wie du beim Debuggen anfangen sollst, nun, error_reporting(E_ALL); iniset('display_errors', 1); am Anfang vom Script notieren und dann mit der Ausgabe der zusammengebauten Statements sowie $row fortfahren.
dedlfix.