PHP Formular mit MySQL

Hi leute,

ich bin ziehmlich neu in den sachen PHP und MySQL und wollt euch fragen ob ihr mir helfen könntet.

Ich möchte gern ein Formular mit PHP erstellen und diese Daten in einer MySQL Tabelle speichern bzw ausgeben lassen.
Habe schohn mal ein HTML Formular erstellt so sollte es aussehen.
-> mozie.bplaced.net/Neu/test.html
Habe auch schon eine MySQL Tabelle erstellt!
Wie gesagt sollten wenn man auf Speichern klickt die Daten in die MySQL eingeschrieben werden.

Ein weiteres PHP Dokument / Seite sollte dann den Namen, Vornamen sowie die Teilnahme in Tabellenform ausgeben.

Habe schon bei google gesucht aber keine sinnvolle Anleitung für einsteiger gefunden.

Bitte um Hilfe und Vorschläge zu meinem Problem.

Im voraus schon mal vielen DANK!

PS: bitte nicht mit extremen Begriffen umwerfen :slight_smile: Wie gesagt habe keine ahnung.

Ähm, du hast es noch nicht einmal geschafft ein vollständiges Formular zu erstellen.

  1. Fehlt das form-Tag, in dem das Ziel und die Übertragungsmethode für die Daten festgelegt werden.
    z.B. HIER KOMMEN DANN DEINE FORMULARFELDER UND DER ABSENDEBUTTON HIN

  2. Fehlt dem Button die Angabe des Typs “submit”, ohne das das Formular nicht abgesendet wird.

  3. werden die Daten dann per $_POST[‘Eingabefeldname’] abgefragt und per SQL-Befehl (INSERT INTO…) in die DB geschrieben.

  4. glaube ich nicht, dass es im Internet dazu nicht genügend Beispiele gibt, welche man zu seinen Zwecken anpassen kann.

Hi,

das was du vorhast ist eigentlich garnicht so schwierig, wenn man es einmal kann. Ich arbeite prinzipiell immer mit 2 Dateien, mann kanne s aber auch in einer lösen. Hier mal meine Methode:

Zuerst das Formular, das du ja schon fertig hast. Dort solltest du als Aktion (was nach dem Klick auf den Absende-Button passieren soll) festlegen. Hier rufen wir einfach die PHP-Datei auf, die das ganze Geschreibsesl in die Datenbank verfrachten soll:

<form enctype="multipart/form-data" action="dbinput.php" method="POST"> [/code]

Nun haben wir also ein fertiges Formular, dessen Eingaben nach dem Abschicken an die Datei dbinput.php gesendet werden. Mit der dbinput kann man jetzt die Dateien in die Datenbank schreiben lassen, das geht dann etwa so:

Zuerst stellen wir die Datenbankverbindung her:
[code]<?php

error_reporting(E_ALL);

$host = "localhost"; // Server
$user = "meinname"; // Benutzername
$pass = "ganzgeheim"; // Passwort
$db = "meinedatenbank"; // Datenbank-Name

$link = mysql_connect($host, $user, $pass) or die ("Keine Verbindung zu der Datenbank möglich.");
mysql_select_db($db, $link);[/code]

Dann kommen die Eingaben zum Zuge - ich geh einfach mal davon aus, dass die name-Attribute genauso sind wie die Bezeichnung, die du davor stehen hast:
[code]mysql_query("INSERT INTO 'tabellenname' (vorname, name, teilnahme, freund,
 bemerkung)
 VALUES ('$vorname', '$name', '$teilnahme', '$freund', '$bemerkung')")
 or die(mysql_error());[/code]

Die VALUES sind die Variablen, die in die Tabelle 'tabellenname' eingefügt werden sollen. Ich bin hier davon ausgegangen, dass Die Spalten der Tabelle vorname, name, etc. heißen.

Nun hast du also ein funktionierendes Formular, dessen Daten nach dem Absenden in eine Datenbank geschmissen werden. Um jetzt die Daten auszugeben benötigt man eigentlich nicht viel mehr als diesen Code:

[code]$query = "SELECT * FROM 'tabellenname' WHERE vorname = '$vorname' AND name = '$name' LIMIT 1";
$result = mysql_query($query);
while ($line = mysql_fetch_array($result))
{
echo "<table>
<tr><td>Vorname</td><td>'$vorname'</td></tr>
<tr><td>Name</td><td>'$name'</td></tr>
<tr><td>Teilnahme</td><td>'$teilnahme'</td></tr>
<tr><td>Freund</td><td>'$freund'</td></tr>
<tr><td>Bemerkung</td><td>'$bemerkung'</td></tr>
</table>
}
?>

Voila, fertig. Ungetestet - sollte aber (sofern ich mich nicht irgendwo verhauen habe^^) so klappen.

@freggle
Doch die Beispiele gibt’s zuhauf - damit hab ich auch gelernt :o)
Hat zwar einiges an Zeit und Nerven gekostet aber nun kann ich es doch recht gut^^

Also erstmal danke für eure Antworten.

Aber geht es auch alles in eine datei zu schreiben also keine html sondern alles in eine php datei?

Ich habe das hier

in mein HTML Dokument integriert, aber irgendwie geht das ni.

Bitte einen Schritt nach dem anderen.
Erstmal den Aufbau von HTML lernen und nicht einfach wild irgendetwas irgendwo einfügen.

Sobald das klappt, können wir uns dann über PHP und MySQL unterhalten. Vorher macht das eigentlich keinen Sinn, außer irgendjemand erledigt die Arbeit, welche du eigentlich erledigen solltest.

@kerbi: Du hast mich falsch verstanden, denn ich meinte es so, wie du es geschrieben hast, dass es eben Millionen von Beispielen gibt und man dort eigentlich nur die Felder für seien eigenen Bedürfnisse anpassen müsste. Aber Eigenständigkeit scheint heutzutage schon ein Fremdwort zu sein. Wenn man den Leuten nicht alles vorkaut und für Babies aufbereitet, dann können die nichtmal 1+1 zusammenzählen.

wenn du ein gutes beginner tutorial für PHP und mysql brauchst dann schau dir mal das hier an:

Habe mal ein Code ausprobiert aber ich bekomme immer die selbe Fehlermeldung.

Parse error: syntax error, unexpected T_STRING in G:\xampp\htdocs\config.php on line 16

index.thml

[code]

Anmeldung Name:
Vorname:
Teilnahme:
Freund/in:
Bemerkung:
[/code]

config.php

[code]<?php

error_reporting(E_ALL);

$host = ‘…’;
$user = ‘…’;
$password = ‘…’;
$db = ‘…’;

$link = mysql_connect($host, $user, $password)or die (“Keine Verbindung zu der Datenbank möglich.”);
mysql_select_db(’$db’, ‘$link’);

mysql_query(“INSERT INTO ‘reg’ (Name, Vorname, Teilnahme, Freund,
Bemerkung) VALUES (’$name’, ‘$vorname’, ‘$teilnahme’, ‘$freund’, ‘$bemerkung’)”)

mysql_close();

?>[/code]

Besorg dir bitte selber wenigstens Grundkenntnisse über die Syntax von PHP - dann würdest du nämlich auch selber sehen, dass da in der Zeile davor das abschliessende Semikolon fehlt.