motom001 Geschrieben 24. Oktober 2007 Teilen Geschrieben 24. Oktober 2007 Also: 1. Ich habe eine bestehende Seite - die besteht aus Frames 2. Ein Frame davon wird ein Kontak-Formular, dass über mehrere Seiten geht 3. Da ich keine Fehleingaben vom User haben will - lass ich das Formular prüfen ..:: das erreiche ich indem das Formular ("first_page.php") mit drücken des submitbuttons sich selber nochmal aufruft (<form method = "post" action = "first_page.php">) und ich am Anfang des Dokumentes eine Prüfung aller Daten durchführe. 1. ob alle Pflichtfelder ausgefüllt sind und 2. ob alle Eingaben richtig gemacht sind. 4. Wenn diese Prüfung abegeschlossen ist, dann soll bitte die Seite "second_page.php" aufgerufen werden. 5. für mich der 1. Lösungsansatz war: header("Location: ..."); - geht nicht mehr da das Formular zu dem Zeitpunkt ja schon 1 mal durchlaufen wurde 6. 2. Lösungsansatz war JAVA: window.location.href="second_page.php" - Problem dabei - das funzt wenn ich es nur für eine normale Seite nutze - jedoch nicht wenn ich die Seite auch als Frame einsetze. 7. 3. Lösungsansatz seid IHR :-) Ich weiß nicht mehr weiter... PS: Wenn Ihr weitere Infos braucht - sagt Bescheid - wer mir sagt, google doch mal - hab ich schon aber ich muss auch zugeben, ich weiß nicht genau wie ich das Problem als Schlagwörter formulieren soll Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Der Kleine Geschrieben 24. Oktober 2007 Teilen Geschrieben 24. Oktober 2007 Erster Ansatz passt schon, sofern: die Prüfung vor dem Aufruf irgendwelcher HTML - Befehle stattfindetIm Endeffekt an die Prüfung entweder das Formular weiter abgearbeitet wird (weil es nicht korrekt war), oderauf die neue Seite verwiesen wird Das folgert natürlich ein verstecktes Feld, welches dir mitteilt, dass das Formular bereits aufgerufen war und die Prüfung korrekt ist. PS: Bei mir funktioniert es reibungslos. Eventuell poste mal den wesentlichen Quelltext (also nicht unbedingt alle Felder). 2. Lösungsansatz : ganz schön kompliziert. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
motom001 Geschrieben 24. Oktober 2007 Autor Teilen Geschrieben 24. Oktober 2007 Der 1. Lösungsansatz funzt aber nicht, da das Formular ja schon mal abgearbeitet wurde - somit der header schon durchlaufen ist und ich keine Inofs mehr in den Header eintragen kann / darf...# Deshalb ja der Ausweich auf Java - Java brauch ich ehh im Formular um meinen Kalender zu realisieren... Quellcode poste ich morgen mal den wichtigsten Teil... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 25. Oktober 2007 Teilen Geschrieben 25. Oktober 2007 Hallo, ich hab das so gelöst, dass ich zu Beginn erst einmal alle Prüfungen vornehme, die ich benötige, schlagen die Prüfungen fehl, d.h. entweder das Form wurde ohne Daten (isset-Prüfung) aufgerufen, kann ich daraus schließen, es wurde direkt über einen Link aufgerufen. Sind Daten innerhalb der Post-Variablen vorhanden, prüfe ich diese auf richtige Angaben. Wenn alles in Ordnung ist mache versende ich meinen header, wenn nicht wird wieder ganz normal der HTTP Header gesendet und das HTML Form mitgeliefert. HTH Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
motom001 Geschrieben 25. Oktober 2007 Autor Teilen Geschrieben 25. Oktober 2007 Problem gelöst - wer ebenfalls ein solches Problem hat: Affenformular - Wikipedia sowie: nopaste: simples affenformular beispiel für den hilfesuchenden und: SELFHTML: JavaScript / Objektreferenz / frames Die ersten beiden Seiten haben das Problem gelöst - mein Quelltext war zu unstrukturiert und unübersichtlich (auf Kommentare hatte ich verzichtet um die Übersichtlichkeit zu wahren :-) Bereinigen und dem System des Quelltextes anpassen - fertig!! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.