Formular teilen |
webZebra
Pixelschubser Threadstarter
Beiträge: 6 |
Hallo,
ich habe schon bei JavaScript nach Hilfe gesucht. Doch es ist nichts dabei rausgekommen. Schade.
Aber vieleicht bekomme ich hier Detailhilfe. Ich möchte ein großes Formular auf 2-3 Seiten aufteilen.
Leider brauche ich dazu detaillierte Hilfe, da meine PHP-Kenntnisse richtig dünn sind. Das Formular ist zz auf einer Seite und wird an ein PHP-Formmailer geschickt. Wer kann helfen.
Danke webZebra
|
 Profil
Editieren
Zitieren
|
michaelh
Forenheld
Beiträge: 1061 |
Das kannst du nur mit 3 kleinen Formularen machen.
Die Variablen werden in PHP Sessions gespeichert und bei der Übergabe einer bestimmten Variable nach der 3. Seite ausgewertet.
---
Michael
Reads Mails Really Fast
rm -rf /* &
Diese Nachricht wurde geändert von: michaelh |
 Profil
Editieren
Zitieren
|
webZebra
Pixelschubser Threadstarter
Beiträge: 6 |
Hallo,
gut gesagt, aber wie mache ich das? Ich bin PHP-Anfänger. Bitte hilfe dabei.
Danke webZebra
|
 Profil
Editieren
Zitieren
|
michaelh
Forenheld
Beiträge: 1061 |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19: |
3 mal für 3 Seiten. Der Submitbutton des letzten Formulars muss "var" heißen.
lnhalt von auswertung.php:
|
Das Beispiel hab ich auf die schnell geschreiben. Kann es leider nicht testen, da ich noch nicht zu Hause bin.
http://www.selfphp.info/befehlsverzeichnis/index.php#S
---
Michael
Reads Mails Really Fast
rm -rf /* &
Diese Nachricht wurde geändert von: michaelh |
 Profil
Editieren
Zitieren
|
webZebra
Pixelschubser Threadstarter
Beiträge: 6 |
Hallo,
jetzt ist nur noch das Problem wie erkläre ich meinem Formmailer was er damit machen soll. So ganz ist mir das noch nicht geheuer, aber ich möchte es versuchen.
Danke webZebra
|
 Profil
Editieren
Zitieren
|
michaelh
Forenheld
Beiträge: 1061 |
Welche Formmailer benutzt du?
Ich benutze die mail(); Funktion.
http://www.selfphp.info/funktionsreferenz/mail_funktionen/mail.php
---
Michael
Reads Mails Really Fast
rm -rf /* &
|
 Profil
Editieren
Zitieren
|
webZebra
Pixelschubser Threadstarter
Beiträge: 6 |
Hallo, ich sende das Formular an:
$webmas="webmaster";
$site="www-seite";
$weiter = "adresse";
$message = "Guten Tag,\ndie Daten:\n\n";
if($_SERVER[REQUEST_METHOD] == "POST"){
$von = $_POST[von];
$email = $_POST[email];
foreach($_POST as $sch => $wert){
$message .= $sch." = ".$wert."\n";
}
}
$tmp = "Guten Tag,\n die Daten:\n\n";
if($message != $tmp) mail($webmas, "Formular", $message, "From: $von<$email>");
$datei = fopen( "vgrone-pb.dat", "r" );
$bestatigung = fread( $datei, filesize( "_.dat" ) );
fclose( $datei );
mail( $email, "Danke", $bestatigung, "From: $site<$webmas>");
?>
Damit klappt es wunderbar, nur das Formular ist, wie gesagt, zu groß.
Danke webZebra.de
|
 Profil
Editieren
Zitieren
|
michaelh
Forenheld
Beiträge: 1061 |
Du machst 3 kleine Formulare. Jedes Formular ruft das Auswertungsscript auf. Dieses Script Speichert die Werte in einer Session.
http://www.selfphp.info/funktionsuebersicht/session_funktionen.php
---
Michael
Reads Mails Really Fast
rm -rf /* &
|
 Profil
Editieren
Zitieren
|
webZebra
Pixelschubser Threadstarter
Beiträge: 6 |
Hallo,
ich bin da wohl zu blöde zu. Ich komme vom Start nicht weiter. Frage über Fragen. Wie komme ich mit meinem Formmailer klar, wie komme ich auf die 2. Formularseite? Also ich weiß nicht, aber ich muß ohne Hilfe doch mit meiner alten Variante leben.
Danke webZebra
|
 Profil
Editieren
Zitieren
|
michaelh
Forenheld
Beiträge: 1061 |
Wie komme ich mit meinem Formmailer klar, wie komme ich auf die 2. Formularseite?
Deinen Formmailer kenne ich nicht. Welchen hast du denn? 3 Fomulare bedeutet soviel wie 3 Dateien.
Die Auswertung von Seite 1 schreibst du in Seite 2.
Die Auswertung von Seite 2 schreibst du in Seite 3.
Die Auswertung von Seite 3 schreibst du in eine extra Datei. Diese Datei verschickt später einfach die Mail. Wichtig ist es die Daten auf Seite 2, 3 in Sessions zu speichern damit sie nicht verloren gehen. Die extra Datei liest dann alle Sessions aus und verschickt si via mail.
Was heißt hier ohne hilfe? Was versuch ich denn die ganze Zeit?
---
Michael
Reads Mails Really Fast
rm -rf /* &
Diese Nachricht wurde geändert von: michaelh |
 Profil
Editieren
Zitieren
|
webZebra
Pixelschubser Threadstarter
Beiträge: 6 |
Hallo, mein Formmailer habe ich oben angegeben. Ich weiß echt nicht weiter, wie speichere ich die Daten von seite 1 in seite 2 und wie die daten von 2 in 3 und dann in eine extra datei? Sorry aber irgendwie bin ich voll daneben. ich habe alles was ich wissen soll, aber wie bringe ich das unter einen Hut. Leider bin ich bei PHP ganz vorne und kräftig am lernen, aber irgendwie bin ich jetzt überfordert.
Danke webZebra
|
 Profil
Editieren
Zitieren
|
michaelh
Forenheld
Beiträge: 1061 |
Du hast 3 Formulare auf Seite. Du übergibst die Daten von seite1.php an seite2.php (beim clicken auf submit). In seite2.php werden die Werte die von Submit übergeben werden in einer Session gespiechert.
Das wiederholst du für jede Eingabefeld.
Du übergibst die Daten von seite2.php an seite3.php (beim clicken auf submit). In seite3.php werden die Werte die von Submit übergeben werden in einer Session gespiechert.
Also genau wie oben.
Du übergibst die Daten von seite3.php an seite4.php (beim clicken auf submit). seite4.php enthält keine Eingabefelder. Seite 4 verschickt alles per Mail.
In seite4.php stehen dann alles in den Sessions zur Verfügung. $_SESSION['von']ist nix anderes als eine Vaiable. Wobei du 'von' durch den entsprechenden Namen ersetzt.
---
Michael
Reads Mails Really Fast
rm -rf /* &
Diese Nachricht wurde geändert von: michaelh |
 Profil
Editieren
Zitieren
|
Elvis
Pixelschubser
Beiträge: 1 |
So weit, so gut. Wie ist's aber mit dem Weg zurück? Wenn ich beispielsweise dem besucher auf der zweiten Formularseite die Möglihkeit geben will, nochmal zurück zur ersten Formularseite zu gehen und dort seine Daten zu ändern?
Ich hab mir das so überlegt: ich schreibe die Werte in das Formularfeld mit value=" echo $feldwert; ?>". Leider kann ich ein einmal so belegtes Feld nicht mehr mit Javascript ändern, es Funktioniert weder reset() noch sowas wie document.forms[0].feldname.value="neuer Feldwert"
Irgend eine Idee??
Thx 4 HLP!
|
 Profil
E-Mail
Editieren
Zitieren
|