Zum Inhalt springen

Weiterleitung mit php


Empfohlene Beiträge


<?php
print "Diese Beispiel würde ein Fehlermeldung produzieren,
weil keine Ausgabe vor dem Senden eines Headers erfolgen darf.<br>";

Header("Location: [url]http://wo.auch_immer.hin[/url]");
exit();

?>

<?php
ob_start();
print "Diese Beispiel würde keine Fehlermeldung produzieren,
weil ob_start() die Ausgabe dieser Meldung puffert.";

if(ich_will_wo_anders_hin){
Header("Location: [url]http://wo.auch_immer.hin[/url]");
exit();
}
if(ich_brauche_mehr){
Header("Location: [url]http://www.php.net/manual/en/ref.outcontrol.php[/url]");
exit();
}
if(ich_bleib_lieber_hier){
print "ob_end() sorgt jetzt dafür das alles ausgegeben wird.";
}
ob_end_flush();
?>
[/PHP]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von DocNeo

Das waere mir neu! Vielleicht versteh ich dich auch falsch, aber ich habe noch nie von einer solchen Limitierung in PHP gehoert.

Das ist immer so, ein Header ist nun mal ein Header und steht somit ganz am Anfang.

Hier ist übrigens der http header und nicht das head tag deiner html Seite gemeint.

Gruß Jaraz

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

so, auch ma mitmischen hier :)

Also.. Grundsaetzlich muessen header-Angaben festgelegt werden bevor irgendein Inhalt ausgegeben wird, damit der Client ueberhaupt weiss was er mit den folgenden Daten anzufangen hat.

Eine Ausnahme ist das output-buffering. Hier wird alles was ausgegeben wird in einem Puffer zwischengespeichert und erst wenn das Skript komplett durchgelaufen ist (bzw ein explizites flush erfolgt) ausgegeben. Dadurch hat man die Moeglichkeit header und cookies im gesamten Skript zu setzen.

Zu dem einem Skript dort oben moechte ich noch anmerken dass in einer header("Location: ..."); *keinesfalls* html uebergeben wird (also Location: <a href....) sondern nur die direkte URL (und zwar absolut, nicht relativ). HTML kommt erst im eigentlichen Content-Bereich wenn der Content-Type HTML ist.

Michael

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...