2009-06-08 1 views
0

Hey da! Hier ist mein Problem, es könnte nur ein Browser-Problem sein, aber jede Hilfe/Ideen wäre großartig!header Location Redirect mit Anker-Tag und IE7

Ziemlich viel habe ich die folgende Umleitung:

header("Location: page.php#images"); 

In den meisten modernen Browsern umleiten # Bilder ohne Probleme page.php aber in IE scheint es die #Bilder abzustreifen. Ist jemand darauf gestoßen? Bis jetzt ist meine einzige Option (die ich für eine schreckliche Option halte) die Umleitung durch JavaScript.

danke!

UPDATE
Ich habe eine einfache Sandbox und es scheint, mit oder ohne absolute URL zu funktionieren. Ich vermute, dass in meiner aktuellen App etwas anderes passiert, das damit im Widerspruch steht. Ich werde aktualisieren, wenn ich es herausgefunden habe, danke für alle Antworten!

UPDATE 2
fand ich heraus, was das Problem ist, aber ich bin immer noch auf dem Update unsicher. Es stellt sich heraus, dass es eine Dateieingabe war, die es brach. Sie können es hier in Aktion sehen http://www.stiprojects.com/anchor/ es funktioniert gut in Firefox aber bricht in IE. der Quellcode in der Umleitung lautet:

header("Location: http://www.stiprojects.com/anchor/index.php?one=1&two=2#/images"); 

Siehst du etwas, das ich nicht sehe? Ich bin so verwirrt!

+0

Ich habe das gerade getestet und es funktioniert gut für mich auf IE7. –

+0

Funktioniert auf My Machine ™ in IE8. –

+0

der Link funktioniert, aber das Formular nicht (in IE 7) – Davy

Antwort

1

Ja, das stimmt. Es kann verhindert werden, wenn Sie einen absoluten Pfad verwenden:

header("Location: http://www.example.com/page.php#images"); 
1

Der Location Header erfordert einen absoluten Pfad pro der HTTP specification. Versuchen Sie, einen absoluten Pfad zu verwenden. Die errata besagt, dass Dokumentfragmente (#id) im Location-Header zulässig sind, aber das Verhalten, wenn ein Benutzer mit einer Seite mit einem Fragment (z. B. http://example.org/a_redirector#this, wo a_redirector auf http://example.com/destination#that umgeleitet wird) verknüpft ist, ist nicht definiert.