Solved

passing string to cgi from web

Posted on 2001-08-15
7
157 Views
Last Modified: 2013-12-25
when I call cgi from my form,
sometimes string contains symbols
like this "%5C%5C%5F"
Is there easy way to convert them to the normal chars?
my cgi-script is written on c.
Thanks
0
Comment
Question by:kako
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
7 Comments
 
LVL 6

Expert Comment

by:holli
ID: 6387560
there is a module for perl. but for c? i don`t know.

anyway. you have to split the string into pieces. here 5C, 5C and 5F. These pieces are the hexadecimal values, representing the char.

eg.
5C = 92 = \
5F = 95 = _

this is the theory.

holli
0
 
LVL 8

Accepted Solution

by:
mnashadka earned 100 total points
ID: 6389158
The best way is to write a function something like:
void change_string(char *input, char *output)
{
  char c[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
  char values[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16};
  int i = 0, j = 0, pos = 0;
  char first_value, second_value;

  for(; i < strlen(input); ++i)
  {
    if(input[i] == '%')
    {
      first_value = toupper(input[i + 1]);
      second_value = toupper(input[i + 2]);
      i += 2;

      for(j = 0; j < 16; ++j)
      {
        if(first_value == c[j])
          first_value = values[j];
        if(second_value == c[j])
          second_value = values[j];
      }
      output[pos++] = (char)(16 * first_value + second_value);
    }
    else
      output[pos++] = input[i];
  }
}

This would be easier in C++, but I think you get the idea.  My syntax may be a little off (I don't do straight C very often), but I think you get the idea.  Hope this helps.
0
 
LVL 16

Expert Comment

by:maneshr
ID: 6654373
kako,

Did you get the solution you were looking for?

If so, please delete this question & free up your points, or award the points to the answer you found most useful.

Thanks,
0
MIM Survival Guide for Service Desk Managers

Major incidents can send mastered service desk processes into disorder. Systems and tools produce the data needed to resolve these incidents, but your challenge is getting that information to the right people fast. Check out the Survival Guide and begin bringing order to chaos.

 
LVL 16

Expert Comment

by:maneshr
ID: 6697219
kako,

Did you get the solution you were looking for?

What solution, if any, did you use?

If you have found the solution to this question on your own, or the question has become obsolete, please delete it & free your points.

Let us know.

Thanks.
0
 
LVL 1

Expert Comment

by:Moondancer
ID: 6699401
Please update/finalize this question.

Thanks,

Moondancer
Community Support Moderator @ Experts Exchange
0
 
LVL 1

Expert Comment

by:Moondancer
ID: 6827579
Administration has been contacted about the lack of responsiveness to prior follow up requests, and this information is being posted in all your open questions today.

This question appears to have been abandoned. Your options are:
 
1.  Accept a Comment As Answer (use the button next to the Expert's name).
2. Close the question if the information was not useful to you. You must tell the participants why you wish to do this, and allow for Expert response.
3.  Ask Community Support to help split points between participating experts, or just comment here with details and we'll respond with the process.
4.  Delete the question. Again, you must tell the other participants why you wish to do this.

For special handling needs, please post a zero point question in the link below, include the question QID/link.
http://www.experts-exchange.com/jsp/qList.jsp?ta=commspt
 
Please click this Help Desk link for Member Guidelines, Member Agreement and the Question/Answer process:  Click you Member Profile to view your question history and keep them all current with updates as the collaboration effort continues.
http://www.experts-exchange.com/jsp/cmtyHelpDesk.jsp

 
PLEASE DO NOT AWARD THE POINTS TO ME.  
 
------------>  EXPERTS:
 
Please leave any comments regarding this question here on closing recommendations if this item remains inactive another three days.
 
Thank you everyone.
 
Moondancer
Moderator @ Experts Exchange
 
P.S.  For year 2000 question, special attention is needed to ensure the first correct response is awarded, since they are not in the comment date order, but rather in Member ID order.
0
 
LVL 16

Expert Comment

by:maneshr
ID: 6827731
Moondancer,

No suggestions, but points definitely not awarded to me.
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this tutorial I will focus on how to use WhizBase as a tool for sending ICQ messages to ICQ. Here I will use a new technology in WhizBase, published in WhizBase 5.1 version. In this tutorial I will use 3 files, pager.wbsp for the processing, e…
A quick Powershell script I wrote to find old program installations and check versions of a specific file across the network.
The viewer will learn how to dynamically set the form action using jQuery.
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.

733 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question