Unable to Pass Query String Which Contains Equal Sign (=) to CGI Program

ID: Q181215


The information in this article applies to:


SYMPTOMS

When you call a Common Gateway Interface (CGI) program from an HTML form and are using the query string to pass parameters, a blank string is passed to the CGI program. The following example illustrates this behavior.

http://<servername>/cgitest.exe?parameter=value


CAUSE

This is a CGI rule. If an unencoded "=" is in the query string, the command line isn't used for passing parameters; you have to use the query string.

Note that an ISAPI DLL does not encounter this issue.


RESOLUTION

If you are unable to obtain an ISAPI DLL equivalent to the CGI program when you are coding the HTML form, you must ensure that the parameters are separated by the hex substitute for the equal (=) sign. The following example demonstrates this:

http://<servername>/cgitest.exe?parameter%3dvalue


STATUS

Microsoft has confirmed this to be a problem in Microsoft Internet Information Server versions 3.0 and 4.0. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

Additional query words: CGI


Keywords          : 
Version           : WINNT: 3.0,4.0
Platform          : winnt 
Issue type        : kbbug 

Last Reviewed: April 30, 1999