This is a discussion on redirect with Anchor Tag in IE within the PHP Language forums, part of the PHP Programming Forums category; The following PHP code snippet works in Firefox and Opera but NOT Internet Explorer (I'm using IE v 6....
|
|||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
|
|||
|
The following PHP code snippet works in Firefox and Opera but NOT
Internet Explorer (I'm using IE v 6.0.2xxx) $url = "http://www.theredirectsite.com/testpage.php?IDa=162&IDb=19909#AT2"; header("Location: " . $url); /* Redirect browser */ exit; The Anchor Tag: "#AT2" generates a 505 error in Explorer. When the Anchor Tag [#AT2] is removed from the URL everything works fine. Any thoughts on a workaround? |
|
|||
|
> The following PHP code snippet works in Firefox and Opera but NOT
> Internet Explorer (I'm using IE v 6.0.2xxx) > > $url = > "http://www.theredirectsite.com/testpage.php?IDa=162&IDb=19909#AT2"; > header("Location: " . $url); /* Redirect browser */ > exit; > > The Anchor Tag: "#AT2" generates a 505 error in Explorer. When the > Anchor Tag [#AT2] is removed from the URL everything works fine. > Any thoughts on a workaround? That's strange. Using your exact code there (simply changing the url), it worked perfectly fine for me in IE. Maybe try replacing the # sign with %23 instead, though I doubt that will fix the problem. I don't see why it wouldn't work though. |
|
|||
|
Thanks for your comments. Here's the exact URL although I don't think
that makes a difference.... <? // next line doesn't work in IE (but works in Firefox and Opera) $url = "http://www.giuseppeverdi.it/Inglese/page.asp?IDCategoria=162&IDSezione=581&ID=19909#AT 2"; // when uncommented the next line works in IE //$url = "http://www.giuseppeverdi.it/Inglese/page.asp?IDCategoria=162&IDSezione=581&ID=19909"; header("Location: " . $url); /* Redirect browser */ exit; ?> BTW: It generates a 500 error in IE not 505. |
|
|||
|
Thanks for your comments. Here's the exact URL although I don't think
that makes a difference.... <? // next line doesn't work in IE (but works in Firefox and Opera) $url = "http://www.giuseppeverdi.it/Inglese/page.asp?IDCategoria=162&IDSezione=581&ID=19909#AT 2"; // when uncommented the next line works in IE //$url = "http://www.giuseppeverdi.it/Inglese/page.asp?IDCategoria=162&IDSezione=581&ID=19909"; header("Location: " . $url); /* Redirect browser */ exit; ?> BTW: It generates a 500 error in IE not 505. |
|
|||
|
An anonymous being wrote:
> $url = > "http://www.theredirectsite.com/testpage.php?IDa=162&IDb=19909#AT2"; > header("Location: " . $url); /* Redirect browser */ > exit; > > The Anchor Tag: "#AT2" generates a 50[0] error in Explorer. When the > Anchor Tag [#AT2] is removed from the URL everything works fine. I can't reproduce your problem with my Internet Explorer web browser (version 6.0.2600.0000IC, Windows 98). Could you provide a URI to a test case? The error is maybe peculiar to your server's response. HTTP/1.1 does not, in fact, permit a fragment identifier as part of the URI in a Location header. Its errata, however, corrects this mistake; and I imagine the next version will include the revision. But because browser developers understand the spirit of the protocol, not just its exact words, most browsers can handle such URIs. > Any thoughts on a workaround? Not at this time; sorry. -- Jock |
|
|||
|
Jock,
This is the actual URL [the one with the Anchor Tag] in question: <? // next line doesn't work in IE (but works in Firefox and Opera) $url = "http://www.giuseppeverdi.it/Inglese/page.asp?IDCategoria=162&IDSezione=581&ID=19909#AT 2"; // when uncommented the next line works in IE //$url = "http://www.giuseppeverdi.it/Inglese/page.asp?IDCategoria=162&IDSezione=581&ID=19909"; header("Location: " . $url); /* Redirect browser */ exit; ?> thanks.... |
|
|||
|
An anonymous being wrote:
> This is the actual URL [the one with the Anchor Tag] in question: [ ... ] Sorry, I meant the original URI, the one from which you are redirecting. My reason for asking is that another part of the response might be causing the problem. I suspect that it's just a quirk in your browser though. -- Jock |
|
|||
|
Jock,
Here's the URI: http://www.allaboutopera.com/opera_r...opera_ndx=1358 The redirects in question are the "libretto" links -- Act 1, Act 2, etc. Each of those links passes an Anchor Tag. Thanks for your help..... |
|
|||
|
An anonymous being wrote:
> http://www.allaboutopera.com/opera_r...opera_ndx=1358 > > The redirects in question are the "libretto" links -- Act 1, Act 2, > etc. I get an error with my IE too, but not if I key the address in directly. Turn off friendly error messages (Tools > Internet Options > Advanced) and you instead get some Italian text, after which you can press refresh to retrieve the page. You could, of course, miss out the middle man: rather than linking to the horrible-looking http://www.allaboutopera.com/redir/i...rl=http%3A%2F% 2Fwww.giuseppeverdi.it%2FInglese%2Fpage.asp%3FIDCa tegoria%3D 162%26IDSezione%3D581%26ID%3D19909%23AT1 link to the not quite so horrible-looking http://www.giuseppeverdi.it/Inglese/...DCategoria=162 &IDSezione=581&ID=19909#AT1 IE does handle #s in Location URIs though; you can try it yourself. I don't know why this redirect is any different. Since the problem seems to be specific to IE, and it's off- topic here, I'd consult an IE newsgroup. (They have a separate group for this because it's not worth including IE in discussions of proper browsers.) -- Jock |