Reasons IE Sucks chipmonks though chainlink fencing, Number 11 in a series of infinity
Given this URL:
http://www.aquarionics.com/gallery/Gid_[and]_Suzi’s_New_Year_2003
IE does the following:
http://www.aquarionics.com/gallery/Gid_%5Band%5D_Suzi/’s_New_Year_2003
Now, I realise the escaping error in the generated URL was my own stupid fault, but the fact that IE automatically reverses any backslashes in a URL - to retain compatibility with Windows’ broken directory seperator – is interesting. It means, for example, we can do this:
@import url(”/assets/cssspecial-ie-stylesheet.css”);
and IE will load it (It will try to “fix” the broken backslash) where Gecko/KHTML will attempt to load a file called “cssspecial-ie-stylesheet.css” in the assets directory is interesting. New browser-hack?
This isn’t news, really. When the first version of the new, all accessible RNIB site went live (And I ranted about it) some of the links contained backslashes, and thus broke for Mozilla, and it’s still annoying, but it might be useful.
What would be really interesting would be combining this with an IIS server. Does the server resolve it as the right path on the system (The Windows one) or as the RFC 2068 compliant one?
My solution, by the way, was to rename the album to “New Years 2003” and leave the escaping problem until I’ve got time to fix it properly.
Pingter:
I think some ’s have been lost in that post somewhere, and if I write that without the apostrophe it disappears in the comment preview as well…
Peter:
Well, I can’t see any instances of the character causing the problem at all – pingter, in your comment I just see ’s, without whatever character should be before the ’
I assume the little beastie is the diagonal slash that isn’t /, yesno?
Pingter:
Indeed. It did appear in the preview though…
\\\\\\\
^ Are there any there? :-)
Aquarion:
Yeah, half as many as you put in :-)
I wrote the [E]2 commenting system with PHP’s “Magic Slashes” turned on, which caused fun when taking things out of the database and previews. As I recall I strip all escape systems at least three times {stripslashes(stripslashes(stripslashes($string)))} before display, just to be sure.
Pingter:
Oops.
It works much better if you turn it off and do it manually, once ;-) (But you know that)