The problem with escaping ampersands is that old browsers don't convert them
back to the & character when sending them back to the server...
I have a little piece of code that I run on every request to fix the
urlvars... It looks something like this...
<cffunction name="parseURLvars" access="public" returntype="struct"
output="false"
hint="Parse URL vars to check for amp; at the
beginning of the var names... This usually occurs in old browsers and
spiders that do not comply with the XHTML standards.">
<cfargument name="URLstruct" type="struct" required="true">
<cfargument name="querystring" type="string"
required="true">
<cfset var URLItem = "">
<cfif FindNoCase("amp;", arguments.querystring)>
<cfloop collection="#arguments.URLstruct#"
item="URLItem">
<cfif FindNoCase("amp;", URLItem)>
<cfset
StructInsert(arguments.URLstruct, ReplaceNoCase(URLItem, "amp;", ""),
arguments.URLstruct[URLItem], true)>
<cfset
StructDelete(arguments.URLstruct, URLItem)>
</cfif>
</cfloop>
</cfif>
<cfreturn arguments.URLstruct>
</cffunction>
So if you were to say call it like this...
<cfset URL = parseURLVars(URL, cgi.query_string)>
It would fix your vars....
Paul
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Create Web Applications With ColdFusion MX7 & Flex 2.
Build powerful, scalable RIAs. Free Trial
http://www.adobe.com/products/coldfusion/flex2/?sdid=RVJS
Archive:
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:275518
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe:
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4