Zum Inhalt springen

Automatische weiterleitung mit php?


Empfohlene Beiträge

Das Umleiten per META-Refresh ist zwar möglich, die bessere Lösung wäre aber eine Weiterleitung per Redirect im HTTP-Header.

Das sieht mit PHP dann so aus:

$link = "/seite2.php";

Header( "Location: ".$link );

Das geht aber nur, solange nicht bereits Daten an den Client geschrieben wurde, da dann bereits Header-Daten geschrieben wurden. Das gilt aber genauso für die META-Refresh-Lösung.

Link zu diesem Kommentar
Auf anderen Seiten teilen

wichtig ist, dass du bevor du den header (header(location:...)) sendest, keine Ausgaben machst. In dem Fall meckert php und sagt es wäre an einer bestimmten Stelle im Skript schon ein header gesendet worden.

In dem Fall mußt du auf den meta "refresh" ausweichen.

Nochwas:

Ich habe unter linux die Erfahrung gemacht, dass nach dem location in "header (location:$url) " kein Leerzeichen sein darf. Das weicht von der Definition der php - manual ab.

Vielleicht kann mir das ja jemand erklären. Wäre nett.

cu,

Thomas

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von EvilInside

[...]

Das sieht mit PHP dann so aus:

$link = "/seite2.php";

Header( "Location: ".$link );

[...]

bei der Weiterleitung sollte man relative Angaben vermeiden (seite2.php)

das kann funktioniren, muss aber nicht... (Browserabhängig)

besser wäre hier --> $link="http://domain.de/seite2.php"

siehe dazu auch --> http://www.php.net/manual/en/function.header.php

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Zwerg

[...]

Kann man bei der Lösung mit dem Haeder auch sagen wann er das machen soll?

Nein, bevor die Seite ausgegeben wird muss bereits feststehen ob ein Redirect gemacht werden soll oder nicht.

Falls ja wird er _sofort_ durchgeführt.

Den Zeitpunkt musst du also programmieren.

So in der Art:


<?
if($variable){
echo"Hallo, ich bin ein PHP-Skript";
}
else{
Header("Location: http://domain.de/andereseite.php");
}
?>
[/php]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Kann ich nicht z.B. sagen ließ mir die Datenbank Werte aus und zeige sie mir 1min. danach lade die nächste Website :confused:


$link ="test.html";
echo "<META http-equiv='refresh' content='60';URL=$link'>";
[/php]

Oder finde ich da gerade nicht ganz durch ?

Tool-Time

Nachtrag :

So, gerade getestet und es geht so auch, einfach genial danke :)

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...