Automatische Weiterleitung nach Klick auf den submit Button bei einem Formular?

3 Antworten

Die Weiterleitung auf eine andere Seite ist problemlos möglich. Das schwierigste daran wird sein, dass diese Seite nicht im aktuelle Tab, sondern in einem neuen Fenster geöffnet werden soll. Aus diesem Grund fällt die Möglichkeit mit header, wie @EinAlexander sie bereits korrekt beschrieben hat, weg.

Alternativ kannst du dies auch per JavaScript tun.

Dafür musst du nach erfolgter Eingabe per PHP ein Script-Tag einbinden, welches folgendes beinhaltet:

window.open("url");

Beim laden der Seite führt dies automatisch dazu, dass die erzeugte url in einem neuen Fenster geöffnet wird.

Mit freundlichen Grüßen

DerFalke123

<form action=" ...dein Link etc." target="_blank">

</form>

Das entscheidene ist das target="_blank"
=_blank öffnet im neuen Fenster
=_self im gleichen
=name_des_fensters (bei Frames z.B:)

Ist es möglich, dass beim Klick auf "weiter" die Daten nach wie vor verarbeitet werden und der erzeugte Link direkt (ohne nochmal irgendwo klicken zu müssen) im neuen Fenster geöffnet wird?

Ja, das ist problemlos möglich. Auf der Seite auf der Du die Formulardaten verarbeitest schreibst Du wie folgt:

<?php
# Verarbeitung der Inputfelder
# und Abspeichern des Linkziels in der Variablen $url
...
header("Location: $url");
exit;
?>

Alex

Bennddy 
Fragesteller
 17.10.2018, 17:32

Danke für den Tipp. Leider funktioniert das nicht. (Vielleicht weil ich es alles auf ein und der selben Seite mache?)
Dann würde er ja schon vor dem eingeben der Daten versuchen auf $url weiterzuleiten. :-/
Geht eine Weiterleitung auch irgendwie in Kombination mit dem Button? Dass der eine Art "Doppeleffekt" hat?

0
EinAlexander  17.10.2018, 17:37
@Bennddy
Dann würde er ja schon vor dem eingeben der Daten versuchen auf $url weiterzuleiten. :-/

Du musst natürlich abfragen, ob das Formular abgeschickt wurde. Zum Beispiel so:

<?php
if (isset($_POST['submit'])) {
  CODE DER DIE DATEN VERARBEITET UND DIE URL GENERIERT
  header("Location: $url");
  exit;
}
?>
<!doctype html>
<title>Formular</title>
<form action="...">
...
</form>
0
regex9  17.10.2018, 18:10
@Bennddy

Mehr Information wäre an dieser Stelle hilfreich. Werden Fehler/Warnungen geworfen? Passiert irgendetwas?

0
EinAlexander  17.10.2018, 18:22
@regex9

Überhaupt wäre es interessant, den Quellcode zu sehen. Aber dann wäre das Problem in 5 Sekunden gelöst und die Aufgabe wäre nicht so spannend für die Antwortenden, wie sie ist, wenn man den Code nur raten kann :-)

0