#1 13. Mai 2014 Hallo, ich möchte mir ein Formular bastel, damit die Kunden Feedback etc. geben können und diese Werte sollen dann in der Datenbank gespeichert werden. Mein Formular sieht so aus: Formular.html Code: <!DOCTYPE html> <html lang="de"> <head> <link rel="stylesheet" type="text/css" href="format.css"> <meta charset="utf-8"> <title>TITEL</title> </head> <body> <h1>Kontakt mit Email</h1> <form action="mailto:info@XXXXXXX <tr> <td>Vorname:</td> <td><input type="text" name="Vorname" size="30"/></td> </tr> <tr> <td>Nachname:</td> <td><input type="text" name="Nachname" size="30"/></td> </tr> </table> <p>Wie sind Sie auf unseren Shop aufmerksam geworden?<br /> <select name="aufmerksam" size="1" > <option value="Internet">Internet</option> <option value="Bekannte">Bekannte</option> <option value="Werbung">Werbung</option> </select> </p> <p> Sonstige Kommentare:<br /> <textarea name="Kommentare" cols="40" rows="2"></textarea> </p> <p><input type="submit" value="Email versenden"/></p> </form> <p><a href="startseite.html">Zurück zur Startseite</a></p> </body> </html> Die Datenbank heißt "test" und dort sollen alle o.g. Werte eingetragen werden. DB-Connect und Eintragen: Code: <?php $verbindung = mysql_connect("localhost", "root", "") or die ("Falsche Logindaten!"); mysql_select_db("test") or die ("Verbindung zur Datenbank fehlerhaft!"); $vorname = $_POST["vorname"]; $nachname = $_POST["nachname"]; $aufmerksam = $_POST["aufmerksam geworden durch"]; $eintrag = "INSERT INTO test(Vorname, Nachname, aufmerksam, Kommentare) VALUES('".mysql_real_escape_string($vorname)."', '".mysql_real_escape_string($nachname)."', '".mysql_real_escape_string($aufmerksam)."'', '".mysql_real_escape_string($Kommentare))"; $eintragen = mysql_query($eintrag) or die(mysql_error()); mysql_close($verbindung); ?> Kann ich ebenfalls die Ergebnisse von Radiobuttons speichern? Falls ja, wie? Sorry, bin der absolute PHP-Noob. Danke im voraus, + Multi-Zitat Zitieren
#2 13. Mai 2014 AW: PHP-Formulardaten in Datenbank speichern radiobuttons geben immer true/false an das kannst du auch speichern. if($_POST['radiobutton']==true){$radiobutton=1;}else{$radiobutton=0;} dann kannst du den wert 1 oder 0 in die datenbank einfügen in eine INTEGER spalte. Der PHP code ist vom Prinzip her richtig, hat nur paar Tippfehler bzw es fehlen paar POST variablen. Die Datenbank-Struktur muss natürlich vorher schon existieren und entsprechend genau die Spaltennamen haben die du verwendest beim INSERT. Du solltest auch eine ID pro Eintrag verwenden. Am besten auf INT und Autoincrement setzen, alles andere auf VARCHAR. $vorname = mysql_real_escape_string($_POST['vorname']); ... ... für alle anderen Daten auch. Code: $query = "INSERT INTO (id,vorname,nachname,aufmerksam,kommentare) VALUES ('','$vorname','$nachname','$aufmerksam','$kommentare')"; so sieht dann der Query aus. Damit du siehst was für Fehler im Code sind, füge das am Anfang der PHPdatei ein: error_reporting(E_ALL & ~E_NOTICE); ini_set("display_errors", 1); + Multi-Zitat Zitieren
#3 13. Mai 2014 AW: PHP-Formulardaten in Datenbank speichern So, habs hinbekommen. Leider trägt er mir bei den Radiobuttons immer die 0 ein, egal welchen ich auswähle. Wie kann ich die am besten definieren? + Multi-Zitat Zitieren
#4 13. Mai 2014 AW: PHP-Formulardaten in Datenbank speichern code? Code: <input type="radio" name="Zahlmethode" value="Mastercard"> Mastercard<br> <input type="radio" name="Zahlmethode" value="Visa"> Visa<br> <input type="radio" name="Zahlmethode" value="AmericanExpress"> American Express + Multi-Zitat Zitieren
#5 14. Mai 2014 AW: PHP-Formulardaten in Datenbank speichern Hast du es mal per echo ""; ausgeben lassen? + Multi-Zitat Zitieren