Thanks for the input. I am using the QtmhRdStin api to parse the
query_string. Yes, the conversion mode was a typo. My config says
%%EBCDIC/MIXED%%.

QtmhRdStin does not parse anything. It just reads the standard input stream of the program.

The reason that characters are encoded is so that they're not confused with delimiters. If QtmhRdStin converted them from %xx to actual characters, you would no longer be able to tell the difference between the delimiters and the encoded characters.

For example, consider a form that asks who to ship a package to. It'd have a field for the ship-to name and the city. In the "name" field, you key "John & Mary". In the city field, you key "Chicago". This is what gets sent from the browser to the HTTP server:

name=John+%26+Mary&City=Chicago

If the HTTP server (Apache or anything else) would convert the %26 to the & character, you'd have this:

 name=John & Mary&City=Chicago

Now you have a problem. & is supposed to be a delimiter that separates one field from another! Notice that there's a & between the value of the "name" field and the "City" field. That's what & is for... it's a separator. If you change %26 to &, now "Mary" appears to be a field by itself.

You can only decode the hex values AFTER you've parsed it into fields and values. Therefore, it's not possible for QtmhRdStin() to do it!

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2020 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].