PHP Formular Weiterleitung abhängig vom Inhalt möglich ?
Liebe Admins,
Ich möchte Euch mal wieder um Hilfe bei einem "Kreativitätsblock" bitten ...
simples Setting: PHP-Formular mit einem Textfeld. Je nach Eingabe des Users in das Textfgeld soll nun Seite B oder Seite C der selben Site aufgerufen werden, will heißen: ist eine eingabeabhängige Verlinkung möglich und wenn ja, wie ?
Gruß aus Kölle
Ich möchte Euch mal wieder um Hilfe bei einem "Kreativitätsblock" bitten ...
simples Setting: PHP-Formular mit einem Textfeld. Je nach Eingabe des Users in das Textfgeld soll nun Seite B oder Seite C der selben Site aufgerufen werden, will heißen: ist eine eingabeabhängige Verlinkung möglich und wenn ja, wie ?
Gruß aus Kölle
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 135817
Url: https://administrator.de/contentid/135817
Ausgedruckt am: 22.11.2024 um 22:11 Uhr
13 Kommentare
Neuester Kommentar
Also: Du hast dein Formular, drückst auf Senden -> oben steht ja <form action=....> -> in dem form-Bereich verweist du auf deine PHP-Seite. Dort ist es eine simple if-Abfrage
if (preg_match($_POST....)) {
...} else {
.,..
}
Und das musst du jetzt nur abhängig von deinen Anforderungen ausfüllen.
Und ausserdem - ganz generell - bringt es bei sowas mehr die Leute auf php.net u.ä. mit dem richtigen Suchbegriff zu verweisen als das ich hier die Doku von php.net o.ä. nochmal abschreibe. Es ist ja nicht so das php.net kostenpflichtig wäre oder du da nicht dran kommen kannst. Weiterhin findest du dort auch die genauen Möglichkeiten die preg_match dir alle liefert,...
Aber gut - wenn es dir lieber ist bei sowas dann gar keine Antwort zu erhalten statt die Antwort zu bekommen wo du die Lösung findest dann bitte...
if (preg_match($_POST....)) {
...} else {
.,..
}
Und das musst du jetzt nur abhängig von deinen Anforderungen ausfüllen.
Und ausserdem - ganz generell - bringt es bei sowas mehr die Leute auf php.net u.ä. mit dem richtigen Suchbegriff zu verweisen als das ich hier die Doku von php.net o.ä. nochmal abschreibe. Es ist ja nicht so das php.net kostenpflichtig wäre oder du da nicht dran kommen kannst. Weiterhin findest du dort auch die genauen Möglichkeiten die preg_match dir alle liefert,...
Aber gut - wenn es dir lieber ist bei sowas dann gar keine Antwort zu erhalten statt die Antwort zu bekommen wo du die Lösung findest dann bitte...
Doch - auch das ist kein Problem. Auch hier hilft dir die PHP.net-Seite weiter. Um genau zu sein der Befehl
"header" (mit dem "Location" dran).
http://de.php.net/manual/de/function.header.php -> dort steht nun wirklich genau das Beispiel:
[quote]
header('Location: http://www.example.com/');
[/quote]
Entweder ist dann header("seite1.html"); oder "header("seite2.html"); - das baust du in die IF-Abfrage ein und die Sache ist erledigt (vorher darf KEINE Ausgabe durch die PHP-Seite erfolgen da ein Header nur als erstes gesendet werden kann).
Es ist einfach das man nur Fragen stellt -> nur ganz ehrlich: Es bringt dich nicht weiter wenn ich dir den Code hier komplett schreibe. ICH kann PHP (und auch ne vielzahl anderer Sprachen) - nur muss ich das nicht programmieren. Und selbst wenn du bei Google nur nach "php html redirect" suchst dann findest du eine vielzahl von Seiten die dir den Header-Befehl auch gesagt hätten.... Ich stehe nunmal auf dem Standpunkt das ein Forum generell dafür da ist jemanden die Hilfe zur Selbsthilfe zu geben - und nicht dafür das andere deine Arbeit machen...
"header" (mit dem "Location" dran).
http://de.php.net/manual/de/function.header.php -> dort steht nun wirklich genau das Beispiel:
[quote]
header('Location: http://www.example.com/');
[/quote]
Entweder ist dann header("seite1.html"); oder "header("seite2.html"); - das baust du in die IF-Abfrage ein und die Sache ist erledigt (vorher darf KEINE Ausgabe durch die PHP-Seite erfolgen da ein Header nur als erstes gesendet werden kann).
Es ist einfach das man nur Fragen stellt -> nur ganz ehrlich: Es bringt dich nicht weiter wenn ich dir den Code hier komplett schreibe. ICH kann PHP (und auch ne vielzahl anderer Sprachen) - nur muss ich das nicht programmieren. Und selbst wenn du bei Google nur nach "php html redirect" suchst dann findest du eine vielzahl von Seiten die dir den Header-Befehl auch gesagt hätten.... Ich stehe nunmal auf dem Standpunkt das ein Forum generell dafür da ist jemanden die Hilfe zur Selbsthilfe zu geben - und nicht dafür das andere deine Arbeit machen...
Das ist schön das es deine Meinung ist das es nicht funktionieren kann. Und entschuldige - aber die Leute die hier Schreiben haben AUCH nen Berufsalltag (und als Admin ist nen 12h-Tag durchaus mal drin - nicht nur bei dir). Auch die haben andere Baustellen. Und auch die haben ggf. Familien/Freunde/Hobbys...
Du solltest hier jetzt alles zusammenhaben -> die If-Funktion, die Header-Funktion usw... Das ganze zusammenschreiben musst du nunmal selbst - da hier eh keiner sagen kann wie das genau aussehen soll (es mag dich überraschen - aber meine Glaskugel hier verrät mir nicht wie deine $_POST["..."]-Variable heisst - und auf welche Werte die if-Abfrage verzweigen soll). Sollte dieses zuviel verlangt sein ist das kein Problem - gerne schreiben dir hier einige auch den kompletten Code so das du den einfach einbauen kannst. Allerdings musst du dann schon die Adresse geben an die Rechnung gehen soll. Denn: Diese Leute haben AUCH eine Familie, haben AUCH einen Stressigen Berufsalltag und das ist ggf. deren Job das die am Programmieren sind.
Von meiner Seite aus ist hier jetzt Ende. Ob du mir glaubst das ich den Code schreiben kann oder nicht - mir zimlich egal. ICH habe das Problem nunmal nicht.
Du solltest hier jetzt alles zusammenhaben -> die If-Funktion, die Header-Funktion usw... Das ganze zusammenschreiben musst du nunmal selbst - da hier eh keiner sagen kann wie das genau aussehen soll (es mag dich überraschen - aber meine Glaskugel hier verrät mir nicht wie deine $_POST["..."]-Variable heisst - und auf welche Werte die if-Abfrage verzweigen soll). Sollte dieses zuviel verlangt sein ist das kein Problem - gerne schreiben dir hier einige auch den kompletten Code so das du den einfach einbauen kannst. Allerdings musst du dann schon die Adresse geben an die Rechnung gehen soll. Denn: Diese Leute haben AUCH eine Familie, haben AUCH einen Stressigen Berufsalltag und das ist ggf. deren Job das die am Programmieren sind.
Von meiner Seite aus ist hier jetzt Ende. Ob du mir glaubst das ich den Code schreiben kann oder nicht - mir zimlich egal. ICH habe das Problem nunmal nicht.
Hi christop,
kleiner Tipp, wie du dir vieles an Nachfragen und Kommentaren ersparen kannst. Information, Information, Information...du schreibst z.B., dass du ein Script mit Feld hast, wohl auch schon etwas mit PHP drin. Genau das gibst du hier wieder, so hilfst du nicht nur dir (deine Lösung kommt evtl. schneller), sondern vorallem uns (siehe "maretz" und seine Glaskugel, die wir alle nicht besitzen).
Mfg
Mitchell
kleiner Tipp, wie du dir vieles an Nachfragen und Kommentaren ersparen kannst. Information, Information, Information...du schreibst z.B., dass du ein Script mit Feld hast, wohl auch schon etwas mit PHP drin. Genau das gibst du hier wieder, so hilfst du nicht nur dir (deine Lösung kommt evtl. schneller), sondern vorallem uns (siehe "maretz" und seine Glaskugel, die wir alle nicht besitzen).
Mfg
Mitchell
Vielleicht solltest du dich wirklich mal auf die Hilfe einlassen, die dir hier von Leuten angeboten wird, die wesentlich mehr Ahnung von PHP haben als du
Im Übrigen kann ich maretz nur zustimmen: Wenn du hier fertige Lösungen haben willst kannst du das gerne haben - gegen den üblichen Studenlohn der Forenteilnehmer.
Aber weil WE ist:
Wenn dir das immer noch nicht passt hat es einen ganz einfachen Grund: Du hast deine Frage falsch formuliert.
Im Übrigen kann ich maretz nur zustimmen: Wenn du hier fertige Lösungen haben willst kannst du das gerne haben - gegen den üblichen Studenlohn der Forenteilnehmer.
Aber weil WE ist:
<?php
if (isset($_POST['frm_sbmt'])) {
switch (@$_POST['frm_go']) {
case 'google':
$tgt = 'http://www.google.de';
break;
case 'web':
$tgt = 'http://web.de';
break;
case 'wiki':
$tgt = 'http://de.wikipedia.org';
break;
default:
die("Input Error");
break;
}
header('Location: '.$tgt);
exit(0);
}
?>
<html>
<body>
<form action="" method="post">
<select name="frm_go">
<option value="google">Google</option>
<option value="web">web.de</option>
<option value="wiki">Wikipedia</option>
</select>
<input value="Los" name="frm_sbmt" />
</form>
</body>
</html>
Wenn dir das immer noch nicht passt hat es einen ganz einfachen Grund: Du hast deine Frage falsch formuliert.