Dustin Cook
Dustin Cook

Reputation: 1305

C Program for Form Processing

I have no idea how to achieve this, but I have a HTML form, with several different elements in it.

For testing, right now, all I would like to do is write a piece of C code that will take anything that is submitted and print this out on the screen.

I can write my own parsing code - I just cannot work out how to get the form data to print directly to the screen.

Thanks in advance.

Upvotes: 3

Views: 3278

Answers (3)

Crowman
Crowman

Reputation: 25946

Here's an example of a form echoing script in C, which you might find helpful in terms of responding to both GET and POST methods, parsing the query string or input, etc:

http://www.paulgriffiths.net/program/c/formecho.php

Upvotes: 0

jxh
jxh

Reputation: 70502

Assuming you have a web server configured to allow you to do CGI, your HTML form needs to be written to either GET or POST the form data to the CGI script. You can then implement a CGI script in C to process the form data.

As a starter CGI script, you can simply echo whatever is provided in the input as the output.

int main () {
    int c;
    puts("Content-type: text/plain");
    puts("Connection: close");
    puts("");
    while ((c = getchar()) != EOF) {
        putchar(c);
    }
    return 0;
}

Upvotes: 1

Jukka K. Korpela
Jukka K. Korpela

Reputation: 201896

You need an HTTP server, with settings that let you run CGI scripts. This could be a server installed locally in your computer, using e.g. XAMPP, or it could be a web server that you have access to.

Then you will write a C program that uses CGI conventions for I/O. As output, it should write a complete HTML document with accompanying HTTP headers. You will need to compile the program into an executable, upload the executable on the HTTP server, and put the URL of the executable into the action attribute of the form.

For details etc., check out Getting Started with CGI Programming in C.

Upvotes: 0

Related Questions