|
| Autor |
Nachricht |
webmasterpaul Neuer [User]

Anmeldung: 28.03.08 Beiträge: 8
|
Verfasst am: 28.03.2008, 11:41 Titel: Wie bekomme ich Daten aus einem Formular in eine Datenbank? |
|
|
Hi,
es tut mir leid, wenn diese Frage schon öfters gestellt wurde, ich habe aber keine Antwort gefunden (weder mit der Suche noch mit google).
Deswegen hier die Frage: Wie bekomme ich es hin, das eine Umfrage (also im formular) in einer Datenbank (mysql) gespeichert wird?
Der weg ist mir schon klar
1. Umfrage/formular erstteln --> action-->php scribt seite
2. Tabelle mit verschiednen spalten erstteln (phpmyadmin)
3. PHP= connet MYSQ -->tabelle ansprechen --> Daten schreiben
4. Weiterleitung zu "Dankeseite"
Das problem ist nur., das ich kaum php kann und hätte deswegen lieber ein ganzen scribt als nur ein Tutorial
vielen dank für eure antworten

|
|
| Nach oben |
|
 |
webmasterpaul Neuer [User]

Anmeldung: 28.03.08 Beiträge: 8
|
Verfasst am: 28.03.2008, 11:44 Titel: das hab ich bis jetzt schon: |
|
|
Das hab ich bis jetzt schon - Klappt aber nicht xD
Index.php
| Code: |
<? echo " ";?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//DE" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<title>MYSQL - Test</title>
</head>
<body>
<table>
<form action="versenden.php" method="post">
<tr>
<td>Vorname: </td> <td><input type="text" name="vorname" value="Vorname"></td>
</tr>
<tr>
<td>Nachname: </td> <td><input type="text" name="nachname" value="Nachname"></td>
</tr>
<tr>
<td></td><td><input type="submit" value="ok!"> <input type="reset" value="löschen!"></td>
</tr>
</form>
</table>
</body>
</html> |
Versenden.php:
| Code: | <?php
//MYSQL-daten
$dbhost = 'host';
$dbuser = 'benutzer';
$dbpass = 'passwort';
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
//Datenbankname
$dbname = 'datenbankname';
$Firma = $_GET['vorname'];
$Name = $_GET['nachname'];
if ($conn)
{
mysql_select_db( $dbname, $conn );
}
//Tabllenname + Spaltennamen
$sql = "INSERT INTO `tabelle`
(`vorname`, `nachname`)
VALUES(
'" .mysql_real_escape_string( $vorname ). "',
'" .mysql_real_escape_string( $nachname ). "'
)";
mysql_query( $sql );
if (mysql_affected_rows() == 1)
{
echo "<h3>Der Datensatz wurde hinzugefügt!</h3>";
// Hier kann weiterer Code stehen der ausgefuehrt werden soll
// wenn ein Eintrag erfolgreich war. z.B. Email an den Admin schicken
// der ueber den neuen Eintrag informiert
}
else
{
echo "<h3>Der Datensatz konnte <strong>nicht</strong> hinzugefügt werden!</h3>";
// Hier koennen Massnahmen ergriffen werden die ueber den Misserfolg informieren
// wie z.B. den Benutzer darueber zu informieren, dem Admin eine Mail schicken
// damit er sich um den Fehler kuemmern kann, etc pp
}
?> |
klappt aber iwie nicht 
|
|
| Nach oben |
|
 |
chris1988 Bekannter [User]

Anmeldung: 12.12.05 Beiträge: 1466
|
|
| Nach oben |
|
 |
webmasterpaul Neuer [User]

Anmeldung: 28.03.08 Beiträge: 8
|
Verfasst am: 28.03.2008, 11:54 Titel: ja ne |
|
|
ja ne, es soll schon eher ein formlar un keine umfrage sein, also eine mischung aus textfeldern, checkbox und radio -kästen 
|
|
| Nach oben |
|
 |
chris1988 Bekannter [User]

Anmeldung: 12.12.05 Beiträge: 1466
|
Verfasst am: 28.03.2008, 12:24 Titel: Re: das hab ich bis jetzt schon: |
|
|
| webmasterpaul hat folgendes geschrieben: |
klappt aber iwie nicht  |
Was klappt nicht? Welche Fehlermeldungen gibt's/Was passiert und was nicht? _________________ Mancher ertrinkt lieber,
als daß er um Hilfe ruft.
(Wilhelm Busch)
|
|
| Nach oben |
|
 |
benjam4 Bekannter [Mod]


Anmeldung: 17.05.06 Beiträge: 1193 Wohnort: Ostfildern ...
|
Verfasst am: 28.03.2008, 13:18 Titel: |
|
|
Das kann ja auch nicht klappen.
Dein Formular geht mit method=POST
Und dann willst du die Variablen mit _GET['vorname'] auslesen.
Also hier mal die versenden.php wie sie besser wäre:
| Code: | <?php
//MYSQL-daten
$dbhost = 'host';
$dbuser = 'benutzer';
$dbpass = 'passwort';
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
//Datenbankname
$dbname = 'datenbankname';
$Firma = $_POST['vorname']; ###Hier habe ich _GET durch _POST ersetzt
$Name = $_POST['nachname']; ### Hier auch.
if ($conn)
{
mysql_select_db( $dbname, $conn );
}
//Tabllenname + Spaltennamen
$sql = "INSERT INTO `tabelle`
(`vorname`, `nachname`)
VALUES(
'" .mysql_real_escape_string( $vorname ). "',
'" .mysql_real_escape_string( $nachname ). "'
)";
mysql_query( $sql );
if (mysql_affected_rows() == 1)
{
echo "<h3>Der Datensatz wurde hinzugefügt!</h3>";
// Hier kann weiterer Code stehen der ausgefuehrt werden soll
// wenn ein Eintrag erfolgreich war. z.B. Email an den Admin schicken
// der ueber den neuen Eintrag informiert
}
else
{
echo "<h3>Der Datensatz konnte <strong>nicht</strong> hinzugefügt werden!</h3>";
// Hier koennen Massnahmen ergriffen werden die ueber den Misserfolg informieren
// wie z.B. den Benutzer darueber zu informieren, dem Admin eine Mail schicken
// damit er sich um den Fehler kuemmern kann, etc pp
}
?> |
Btw: warum lässt du in der index.php am anfang ein leerzeichen mit php ausgeben? _________________ Rechtschreibfehler sind beabsichtigt, sie dienen der Verschleiherung meiner tatsächlichen Genialität
____________________________________
Eine Signatur sie alle zu knechten
|
|
| Nach oben |
|
 |
webmasterpaul Neuer [User]

Anmeldung: 28.03.08 Beiträge: 8
|
Verfasst am: 28.03.2008, 13:37 Titel: |
|
|
ok...das war der erste fehler...hab jetzt das problem: er sagt zwar, das datensätze hinzugefügt wurden, wenn ich aber mit phpmyadmin die datensätze exportieren will expotrtiert der mir nur eine leere Tabelle (obwohl er sagt datensätze 0-6 exportieren)
kan das an den Spalteneinstellungen liegne?? 
|
|
| Nach oben |
|
 |
benjam4 Bekannter [Mod]


Anmeldung: 17.05.06 Beiträge: 1193 Wohnort: Ostfildern ...
|
Verfasst am: 28.03.2008, 13:50 Titel: |
|
|
wenn du in phpmyadmin dir die tabelle anzeigen lässt, siehst du die Datensätze dann? _________________ Rechtschreibfehler sind beabsichtigt, sie dienen der Verschleiherung meiner tatsächlichen Genialität
____________________________________
Eine Signatur sie alle zu knechten
|
|
| Nach oben |
|
 |
webmasterpaul Neuer [User]

Anmeldung: 28.03.08 Beiträge: 8
|
Verfasst am: 28.03.2008, 14:08 Titel: |
|
|
ja, jetzt schon...ich hatte natürlich einen tippfehler bei den variablken drin...
danke
funktioniert alles einwandfrei
|
|
| Nach oben |
|
 |
|
|