I am using Pathauto to generate URLs with querystrings that use tokens to identify node content. The querystring will be used by a GET command in destination form to fill in variables to then send into an Amazon payments post form.
The alias code I am using for my node type in pathauto is:
explore/[nid]?solution_name=[title-raw]&solution_id=[nid]
The link appears to render properly while creating/editing the node, however the URL is percent coded when rendered in browser.
explore/304%3Fsolution_name%3Dapp-test%2526solution_id%3D304
The percent coded URL is not working properly with my application though I thought this coding was technically equivalent. When I manually replace the percent coded characters with actual '?', '=', and '&' characters, my app works fine.
I have tried transliteration, but it doesn't appear to handle these characters anyway when i look at the i18n-ascii.txt file, it only contains maps relating to languages characters.
Any ideas as to how to force the actual ?=& characters into the URL encoding?
Comments
Comment #1
gregglesCan you try manually creating one of these aliases at admin/build/path and see if that works? My guess is that it won't because those symbols get url_encoded as they are pulled out of the database. Not much to do there...
So, an alternate solution is to just use / as your separate rather than get parameters and check for the values using arg():
explore/[nid]/[title-raw]/[nid]
In this setup, title-raw will be in arg(2) and nid will be in arg(1) and arg(3).
Comment #3
jee commentedBe sure you are not using the l() function. Doing so will urlencode your link.