Hallo Forumaner,
leider habe ich noch immer keine Lösung für mein Problem bekommen, die mir wirklich weiterhilft...
Vielleicht könntest du mir ja ein wenig weiterhelfen?
Ich habe eine html Seite, in welcher der User seine persönlichen Daten eingeben kann. Das habe ich mit einem Formular gelöst, welches über die ganze Seite geht.
Am Ende gibt es ein Button speichern oder abbrechen.
Nun würde ich dem User gern die Möglichkeit bieten, ein Bild upzuloaden. Dazu habe in in mitten des Formulares ein Platzhalterbild "Bild upload hier klicken" eingefügt.
Klickt der User dieses Platzhalterbild an, erscheint eine neue Seite, auf der das Bild upgeloaden werden kann. Geht der User per Schaltfläche "zurück" dann wieder auf die Eingabeseite zurück, sind jedoch alle zuvor eingegebenen Daten verschwunden.
Daher dachte ich mir, speichere ich die Daten, bevor der user auf die Upload Seite gelinkt wird, in der Datenbank ab.
Das würde meines Wissens sehr gut funktionieren, wenn ich das Bild einfach als Form definiere und bei Klick ein Submit zum Speichern durchführe:
<form action="anzeigentemplates/upload.php" method="post"><input type="image" src="logo.gif" value="submit">
</form>
Leider kann ich diese Form-Tag zum Bildupload innerhalb der Form zum eingeben der persönlichen Daten nicht definierten.
Ich habe auch bereits drei Lösungen bekommen:
Lösung1:
Öffne die Bild-Upload-Seite in einem neuen Fenster
Das ist eine gute Idee, doch wenn ich dann das Fenster wieder schließe, wird das Platzhalterbild duch das neue Bild nicht ersetzt.Das wäre schon sehr schön.
Besteht hier die Möglichkeit per Java Skript zu definieren, Z.B:OnClick(schließe neues Fenster und lade die alte Seite neu ein)?
Lösung2:
Wenn du keine RESET-Button zur Verfügung stellst, bleiben AFAIK die Formularinhalte beim Betätigen von ZURÜCK erhalten.
Ich habe vergessen zu sagen, dass das Formular selbst per include aufgerufen wird. Ich glaube deswegen sind auch die Eingaben immer wieder verschwunden.
Lösung3:
<img src.... alt... onClick="Hauptformular.ParameterWasDanachFürNeSeiteKommtAlsHidden="PIC";Hauptformularname.submit();">
Du hast in deinem Riesenformular ein HiddenFeld wodrin du speicherst ob als nächstes nur eine Danke-Seite kommen soll oder die Bildupload-Seite. Dann Submittest du das Hauptformular.
Die Lösung hört sich super an, leider scheitert es bei mir etwas an der Durchführung. Ich habe von Java Skript so gut wie keine Ahnung...
Insbesondere das AlsHidden kann ich nicht deuten.
Wenn ich das so richtig verstanden habe, füge ich ein Bild ein:
<img src="logo.gif" onClick="form.'upload.php'as hidden="PIC";form.submit();">
Klickt man nun auf das Platzhalterbild wird das Haupformular Submittet und damit die Werte gespeicht und man kommt auf die Upload seite.
Klickt man auf den Button Speichern. Wird das Formular ebenfalls gespeicht und man kommt auf die Danke Seite.
Ist das so generell richtig? Wenn ja, könnte mir hier jemand einen Tipp für die richtige Schreibweise dieses Befehls geben?
Eine weitere Lösung habe ich erhalten:
Warum mit JavaScript wenn es auch ohne geht? <input type="image" name="hochladen" value="tues" src="bla" alt="bli"> hat etwa den selben Effekt und funktioniert immer. (Das wäre auch die richtige (tm) Lösung für dieses Problem)
Aber damit kann ich, soweit ich weiß, doch nur die Adresse aufrufen, die im FormTag Action definiert wurde. Beim Button speichern wird php-self aufgerufen, beim Klick auf das Bild sollte die Bild-Upload Seite erscheinen.
Oder kann man z.B. auch irgendwie zwei Action Adressen definieren, je nach Submit Button?
Für Antworten möchte ich mich schon jetzt sehr bedanken!
Viele Grüße aus Braunschweig
Fabian