Hi,
ich kenn mich nicht besonders gut mit PHP in Verbindung mit MySQL aus, und wollte nun eine Tabelle anlegen, über die ich mit einem Formular Werte eintragen kann.
Tabelle ist korrekt angelegt, Formular ist erstellt, nur klappt das mit dem Eintragen nicht so ganz.
Ich habe also diverse Eingabefelder
Hersteller: <input type="text" name"hersteller"><br>
Bezeichnung: <input type="text" name"bezeichnung"><br>
Kapazitaet: <input type="text" name"kapazitaet">
Laut einem Buch (PHP lernen) übergebe ich die Werte nun wie folgt an die Tabelle:
$eintrag = "INSERT INTO usb (hersteller, bezeichnung, kapazitaet) VALUES ('$hersteller', '$bezeichnung', '$kapazitaet')";
$eintragen = mysql_query($eintrag);
Wenn ich das Formular abschicke kommt kein Fehler, in der Tabelle wird zwar korrekt ein Datensatz angelegt, aber alle Felder sind leer.
Da ich mir früher mal ein kleines CMS gebastelt habe wo ich schon mit Formularen und MySQL gearbeitet habe, habe ich geschaut, wie ich das dort gemacht hatte. Dort sieht der PHP-Code für den MySQL-Teil so aus:
$hersteller = $_POST['hersteller'];
$bezeichnung = $_POST['bezeichnung'];
$kapazitaet = $_POST['kapazitaet'];
$eintrag = sprintf("INSERT INTO usb (hersteller,bezeichnung,kapazitaet) VALUES ('%s', '%s', '%s')", mysql_real_escape_string($hersteller), mysql_real_escape_string($bezeichnung), mysql_real_escape_string($kapazitaet));
$eintragen = mysql_query($eintrag);
Keine Ahnung wie ich damals darauf gekommen bin, ich hatte damals das gleiche Buch wie heute :D
Jedenfalls klappt es damit.
Kann mir jemand verraten, was an Variante 1 falsch ist bzw. wieso ich das über den für mich komplizierteren Weg 2 gehen muss?
Danke