Only one query string can be passed when logging in using
...user/login?destination=node/18?uid=3&id=1
After the login's redirection, only uid is passed, but not id.

Comments

Nikdilis’s picture

Title: Only one query string can be passed when logging in using user/login?destination=node/18?uid=3?id=1 » Only one query string can be passed when logging in using user/login?destination=node/18?uid=3&id=1

corrected the issue title

Nikdilis’s picture

Category: bug » support
Status: Active » Closed (fixed)

ok, to pass more than one parameter, "?","&","=" have to be encoded in ASCII characters:
http://www.w3schools.com/tags/ref_urlencode.asp

From:
login?destination=node/72?a=1&b=2
To:
login?destination=node%2F72%3Fa%3D1%26b%3D2
or
login?destination=node/72%3Fa%3D1%26b%3D2

"/" => %2F
"?" => %3F
"=" => %3D
"&" => %26

One problem still exists: See http://drupal.org/node/1751494
Assuming a site depends on query strings in order to show mysql-database results and a login block is placed on this site (node14):
i.e.: site?id=3
In case of an error on that login block the address changes from 'site?id=3' to 'site?destination=node/14%3Fid%3D3' and I'm unable to get the query strings and can't show database results.

However, the basic problem - passing parameters in login?destination- is solved, so I'm closing this issue.