how to set custom destination properly in drupal url
I'm trying to place the destination in a drupal path like this:
http://myhost/root-folder/node/100/delete?desti开发者_StackOverflownation=node/150?nid=300
It's a little bit unusual in terms of drupal terminology, but this is my requirement.
When I visit the above url it's shows me a delete button and a cancel link. But when I click on the cancel link, the redirected page url becomes like this:
http://myhost/root-folder/node/150%3Fnid%3D300
instead of
http://myhost/root-folder/node/150?nid=300
i.e. myhost = localhost
This means it's replacing the ? with code %3F and = with %3D.
How can I avoid this issue?
That's actually totally correct, the second ? is after the query string identifier (i.e. the first ?), so it has to be url encoded to remain valid.
Don't worry about it though, when Drupal performs it's redirects by using the drupal_get_destination() function it decodes the encoded string and will redirect to the correct path.
Try putting a few different URLs in this online tool and you'll see what they are supposed to look like when they're encoded properly.
加载中,请稍侯......
精彩评论