How I can pass a query string with special characters?
For example I need to pass "&" inside my query string as below:
../solrresults.asp?mode=search&data=M & S Use Server.UrlEncode:
URLEncode converts characters as follows: Spaces ( ) are converted to plus signs (+). Non-alphanumeric characters are escaped to their hexadecimal representation.
Use it this way;
<a href="page2.asp?name=<%= Server.URLEncode(sName) %>">here</a> As stated, the UrlEncode method would be the way to go.
Some time ago I wrote a small class QueryString to simplify the work with those query strings.
An example usage would be:
private void Page_Load( object sender, System.EventArgs e ) { // Let the object fill itself // with the parameters of the current page. QueryString qs = new QueryString(); // Read a parameter from the QueryString object. string value1 = qs["name1"]; // Now remove the parameter. qs.RemoveParameter( "name1" ); // This has the same effect as RemoveParameter() method: qs["name1"] = null; // ... Further processing of the value1 variable ... } You can fill the query string class and don't have to care whether to URL-encode the values, the class handles this internally for you.
After your comments, here is a solution in various scripting languages:
There are different versions available for each scripting language. Here is a reference from w3schools:
In JavaScript you can use the encodeURI() function. PHP has the rawurlencode() function and ASP has the Server.URLEncode() function.
HttpUtility.UrlEncode()Server.UrlEncode()Function...