Hallo,
$sql = sprintf ('INSERT INTO angaben (Vorname,)
VALUES ('%s)',
$db->real_escape_string($_POST['Vorname'])
);
a) nähme ich ein Prepared Statement.
b) wenn ich es wie Du schon zusammenbaute,
nutzte ich für sprintf Anführungszeichen, die mir das Escapen
von notwendigen Anführungszeichen ersparten:
"INSERT INTO ... "
c) der derzeit hinderliche Fehler ist jedoch das Komma in der Spaltenliste
hinter Vorname:
"INSERT INTO angaben (Vorname) VALUES ('%s')", ...
d) Wenn man SQL-Statements dynamisch zusammenbaut, hilft die Ausgabe des
erzeugten Statements mit anschließendem Copy-and-Paste in den DB-Client
Deiner Wahl.
Freundliche Grüße
Vinzenz