PHP Redirect ?
Kris
- php
gibt es einen simplen Redirect im PHP ?
Code so ungefähr wie folgt aussehen (stark vereinfacht) :
if ($xyz == 0) { "go back" }
"go back" = Redirect auf die Seite zuvor :)
Ahoi Kris,
gibt es einen simplen Redirect im PHP ?
es besteht die möglichkeit mit einer Kombo aus $_SERVER['HTTP_REFERER']
und header("Location:") so etwas zu "simulieren", allerdings kann
$_SERVER['HTTP_REFERER'] vom Benutzer AFAIK manipuliert werden.
MfG
\ / \ /´¯.l.¯
\ /Ahoi Kris,
gibt es einen simplen Redirect im PHP ?
es besteht die möglichkeit mit einer Kombo aus $_SERVER['HTTP_REFERER']
und header("Location:") so etwas zu "simulieren", allerdings kann
$_SERVER['HTTP_REFERER'] vom Benutzer AFAIK manipuliert werden.MfG
also irgendwie weiß ich nicht ob du mich verstanden hast :)
ich habe auf meiner Hauptseite ne Menge Checkboxen und Textareas ...
wenn man dann auf den untersten Button klickt (wo das Form Tag aufhört), dann schickt er dich auf die nächste Seite, die die übergebenen Variablen dann verarbeitet. Wenn jedoch NIX angeklickt wurde und in keiner Textarea was steht (soweit so gut das geht ja auch alles vom proggen her sehr einfach) ... will ich eine Abfrage machen bevor er den Content ausspuckt und wenn eben NIX weitergegeben wurde, dann soll er direkt wieder auf die Seite zurückspringen. Seitenname kann ich ja auch fest angeben ...
aber ich hab halt kA wie der Befehl zum zurückspringen bzw. zu einer Seite springen ist :/
Ahoi Kris,
aber ich hab halt kA wie der Befehl zum zurückspringen bzw. zu einer Seite springen ist :/
header("Location: script.php");
fertig.
MfG
\ / \ /´¯.l.¯
\ /Ahoi Kris,
aber ich hab halt kA wie der Befehl zum zurückspringen bzw. zu einer Seite springen ist :/
header("Location: script.php");
fertig.MfG
19 <?
20 $tt=0;
21 for ($t=1;$t<=sizeof($reihe2);$t++) {
22 if ($cb[$t] == $t or $ta[$t] != "") {$tt = 1;}}
23 if ($tt == 0) {header("Location: v2_proggie.php");}
24 ?>
hab ich probiert ...
raus kommt :
Warning: Cannot modify header information - headers already sent by (output started at /xxx/xxx/xxx/xxx/v2_proggie_2.php:11) in /xxx/xxx/xxx/xxx/v2_proggie_2.php on line 23
Moin!
23 if ($tt == 0) {header("Location: v2_proggie.php");}
Zwei Fehler:
1.) ->
Warning: Cannot modify header information - headers already sent by (output started at /xxx/xxx/xxx/xxx/v2_proggie_2.php:11) in /xxx/xxx/xxx/xxx/v2_proggie_2.php on line 23
Du darfst zuvor einfach nichts, nichts aber auch gar nichts an den Browser senden.
2.) Du muss eine komplette URI bauen, also mit http://servername/verzeichnis... Ein relativer Verweis nur mit dem Skriptname tut es (mit sehr vielen Browsern) nicht.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Moin!
23 if ($tt == 0) {header("Location: v2_proggie.php");}
Zwei Fehler:
1.) ->
Warning: Cannot modify header information - headers already sent by (output started at /xxx/xxx/xxx/xxx/v2_proggie_2.php:11) in /xxx/xxx/xxx/xxx/v2_proggie_2.php on line 23
Du darfst zuvor einfach nichts, nichts aber auch gar nichts an den Browser senden.
stimmt :)
2.) Du muss eine komplette URI bauen, also mit http://servername/verzeichnis... Ein relativer Verweis nur mit dem Skriptname tut es (mit sehr vielen Browsern) nicht.
bei Opera, Firefox und IE funktionierts reibungslos oO
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
so long
KRIS :)
Moin!
2.) Du muss eine komplette URI bauen, also mit http://servername/verzeichnis... Ein relativer Verweis nur mit dem Skriptname tut es (mit sehr vielen Browsern) nicht.
bei Opera, Firefox und IE funktionierts reibungslos oO
Mach es einfach richtig, spart später die Fehlersuche.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Ahoi Kris,
aber ich hab halt kA wie der Befehl zum zurückspringen bzw. zu einer Seite springen ist :/
header("Location: script.php");
fertig.MfG
19 <?
20 $tt=0;
21 for ($t=1;$t<=sizeof($reihe2);$t++) {
22 if ($cb[$t] == $t or $ta[$t] != "") {$tt = 1;}}
23 if ($tt == 0) {header("Location: v2_proggie.php");}
24 ?>hab ich probiert ...
raus kommt :Warning: Cannot modify header information - headers already sent by (output started at /xxx/xxx/xxx/xxx/v2_proggie_2.php:11) in /xxx/xxx/xxx/xxx/v2_proggie_2.php on line 23
geht nun
hatte folgenden vergessen :
Da darfst Du aber bis dato nichts gesendet haben (fastix)
:)
Hi Daniel,
header("Location: script.php");
Für Location muss eine absolute URI angegeben werden, wie hier auch schon oft erwähnt wurde.
MfG, Dennis.
Moin!
aber ich hab halt kA wie der Befehl zum zurückspringen bzw. zu einer Seite springen ist :/
Kann ja PHP auch nicht haben, dass läuft auf dem Server, nicht im Browser. Lies deshalb meinen anderen Beitrag.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Ahoi Kris,
gibt es einen simplen Redirect im PHP ?
es besteht die möglichkeit mit einer Kombo aus $_SERVER['HTTP_REFERER']
und header("Location:") so etwas zu "simulieren", allerdings kann
$_SERVER['HTTP_REFERER'] vom Benutzer AFAIK manipuliert werden.MfG
also irgendwie weiß ich nicht ob du mich verstanden hast :)
ich habe auf meiner Hauptseite ne Menge Checkboxen und Textareas ...
wenn man dann auf den untersten Button klickt (wo das Form Tag aufhört), dann schickt er dich auf die nächste Seite, die die übergebenen Variablen dann verarbeitet. Wenn jedoch NIX angeklickt wurde und in keiner Textarea was steht (soweit so gut das geht ja auch alles vom proggen her sehr einfach) ... will ich eine Abfrage machen bevor er den Content ausspuckt und wenn eben NIX weitergegeben wurde, dann soll er direkt wieder auf die Seite zurückspringen. Seitenname kann ich ja auch fest angeben ...aber ich hab halt kA wie der Befehl zum zurückspringen bzw. zu einer Seite springen ist :/
hab den Fehler gefunden ...
es muss komplett über jeglichen <HEAD> etc. Tags stehen :)
Denkfehler ...
danke nochmals :)
Hi Kris,
hab den Fehler gefunden ...
es muss komplett über jeglichen <HEAD> etc. Tags stehen :)
Es muss sogar komplett vor jeglichen Zeichen stehen, die an den Browser gesendet werden, also z.B. würde auch schon ein einziges Leerzeichen vor <?php schon zu einem Fehlschlagen führen.
MfG, Dennis.
Hi!
Kann es sein, dass du Usereingaben validieren möchtest? Dann wäre dein Linktipp des Tages: Das Affenformular (da gibt es übrigens noch keinen Wikipedia-Artikel zu ;-) )
Und bitte [lihnk:http://learn.to/quote@title=unterlasse Fullquotes].
Gruß aus Iserlohn
Martin
echo $begrüßung;
Redirect auf die Seite zuvor
Die "Seite zuvor" kann man in $_SERVER["HTTP_REFERER"] finden, muss man aber nicht, da das eine Angabe ist, die der Client mitsendet und beliebig fälschen kann.
echo "$verabschiedung $name";
Moin!
gibt es einen simplen Redirect im PHP ?
Du kannst die Seite in einer Session speichern und mittel header("Location: ....) oder mit einer Kombination aus HTML und Javascript aufwarten.
if ($xyz == 0) {
echo '<script type="text/javascript">history.back();</script><p>Bitte benutzen Sie die Zurück-Taste Ihres Browsers</p>';
}
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Moin!
gibt es einen simplen Redirect im PHP ?
Du kannst die Seite in einer Session speichern und mittel header("Location: ....) oder mit einer Kombination aus HTML und Javascript aufwarten.if ($xyz == 0) {
echo '<script type="text/javascript">history.back();</script><p>Bitte benutzen Sie die Zurück-Taste Ihres Browsers</p>';
}MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
gibt es denn keine Möglichkeit einen Befehl zu setzen, der unaufgefordert dich direkt zurückkatapultiert oder zu einer bestimmten Seite ?
Moin!
gibt es denn keine Möglichkeit einen Befehl zu setzen, der unaufgefordert dich direkt
zurückkatapultiert oder zu einer bestimmten Seite ?
Hab ich doch. Das Javascript macht genau dies. Nur, wenn der Besucher JS deaktiviert hat sieht er überhaupt die Aufforderung.
Die zweite Lösung.
<?
header ("Location: http://www.deineDomain.tld/seite.php?foo=bar&bar=foo">
?>
Da darfst Du aber bis dato nichts gesendet haben und musst wissen wohin Du ihn zurückkatapultieren willst. Du kannst den String natürlich frei zusammenbauen, nur ein gültige URI muss rauskommen.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Moin!
gibt es denn keine Möglichkeit einen Befehl zu setzen, der unaufgefordert dich direkt
zurückkatapultiert oder zu einer bestimmten Seite ?Hab ich doch. Das Javascript macht genau dies. Nur, wenn der Besucher JS deaktiviert hat sieht er überhaupt die Aufforderung.
Die zweite Lösung.
<?
header ("Location: http://www.deineDomain.tld/seite.php?foo=bar&bar=foo">
?>Da darfst Du aber bis dato nichts gesendet haben und musst wissen wohin Du ihn zurückkatapultieren willst. Du kannst den String natürlich frei zusammenbauen, nur ein gültige URI muss rauskommen.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
alles klar funktioniert :)
genau wie die HEADER Funktion bei PHP auch...
Problem war :
Da darfst Du aber bis dato nichts gesendet haben
danke nochmals KRIS :)
hi Kris,
bitte lies </faq/#Q-09a> und </faq/#Q-09b>, und berücksichtige sie bei deinen zukünftigen postings.
gruß,
wahsaga