![]() |
[PHP] Formular versenden UND in Datenbank eintragen?
Hallo Leute,
leider wieder ein Fall von "ich bin zu dumm" ;) Kann ich Daten aus einem Formular gleichzeitig senden und in eine Datenbank schreiben? ich bekomme beides nacheinander ja hin, aber gleichzeitig geht es nicht ;) Also sowohl das Versenden von Emails (formmailer) als auch das Schreiben in eine Datenbank geht, nur leider nicht gleichzeitig... was tun? hier noch der Hintergrund: es sollen sich Leute anmelden können (zu einem Kurs) mit folgenden Schritten: S1->S2->S3 S1: Eingabe der Daten in ein Code:
<form action="s2.php" method="post"> Code:
<?php beim Klick auf "Senden" würde ich jetzt gerne die Daten an mich senden und in die Datenbank eintragen... Hilfe ist willkommen :-) Grüße Christoph |
vielleicht check ich auch die Syntax nicht richtig... hier meine SQL Query
Code:
<?php :confused: |
Soweit ich das verstanden habe:
Auf S2 soll man vor dem Absenden seine Daten überprüfen können? Mach ein neues Formular (Stichwort:<input type="hidden"...), wo du die eingegebenen Daten versteckst und mit "Senden" an S3 weiterleitest. Auf S3 werden die Daten wie bei einem normalen Formular ausgelesen, die Mail gesendet und danach in die DB eingtragen. Gleichzeitig im Wortsinn geht nicht. siehe:http://de.selfhtml.org/html/formulare/versteckte.htm ps: $datum=date("m, d, Y"); die DBTabelle scheint nicht wirklich gut zu sein, vermisse zB. einen brauchbaren Index |
also ich brauch die drei Schritte nicht unbedingt. Wenns auf einem geht bin ich glücklich ;)
das Emailen geht auch problemlos, nur in die Datenbank wird nichts eingetragen. Ich habe aber DB, Table und User/Passwort 100 Mal überprüft (aus leidiger Erfahrung). wo ist der Haken bei der Query, oder kann ich nicht senden und Datenbankschreiben einfach hintereinander in eigenen <?php ?> Tags... ich kanns ja mal in eines packen ;) der Index der Tabelle ist auto_increment, aber brauche ich den in der query? danke wegen dem date();! |
Du könntest mal schaun ob deine SQL-Abfrage einen Fehler wirft:
PHP-Code:
Ahja.. ein String mit "Test $variable" da schreibt er die Variable in den String, mit Arrays ("Test $_POST['Variable']") funktioniert das soweit ich weiß nicht - da wird auch dein Fehler sein. lg |
Zitat:
also 100 Punkte für dich :D wie übergebe ich ihm denn die Variablen in die Query? |
Also entweder du machst folgendes:
$name = $_POST["name"] und dann so wie du es gemacht hast, oder du hängst die Strings 'zusammen', mit "." PHP-Code:
Möglichkeit 1 wäre vorzuziehen, und dabei kann man auch gleich die Eingaben aus dem Forumular überprüfen. lg zaPPEL |
danke schon mal für die Hilfe, das Einfügen haut jetzt hin, leider sind die Variablen immer leer...? Code:
$name = $_POST["FName"]; im Formular heißen die Felder aber so: Code:
<form action="<?php print $_SERVER['PHP_SELF']; ?>" method="post"> |
Müsste so eigentlich funktionieren, ich sehe den Fehler zumindest auf die Schnelle nicht.. mach mal
print_r($_REQUEST); bzw. print_r($_POST) (da zeigt er dir das komplette Server-Request bzw. Post-Array an) btw. sieht die HTML-Datei wirklich so aus und der Tag schließt nicht: <dd> <input type="hidden" name="Kursort" ? Mach den mal zu.. außerdem ist das ein ziemlicher HTMl-Müll - sorry ;) Tu bitte mal alle <DL> <DD> <DT> und <DIVS> raus.. mach einfach nur ein <form> mit <inputs> und teste das ganze nochmal lg |
schas ;)
seltsam ist, dass die Variablen nicht übernommen werden, dafür wird jeder Datumseintrag doppelt in der Datenbank angelegt... und ich habe mir gedacht, dass das sicher einfach geht *g* also der Mailversand funktioniert perfekt und zuverlässig. vielleicht hängts irgendwo zwischen Mail() und der Datenbank.... Code:
if($_POST) danke für deine Hilfe, dadurch bin ich schon weiter gekommen! :-) |
Alle Zeitangaben in WEZ +2. Es ist jetzt 02:34 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag