Source C du script formulaire
/*
* formulaire.c
*
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <cgicenst.h>
#define TITRE "Résultat du questionnaire"
int cgiMain(void)
{
char prenom[40], nom[40], couleur[40], choix[40]; /* parametres */
cgiFormStringNoNewlines("nom",nom,41);
cgiFormStringNoNewlines("prenom",prenom,41);
cgiFormStringNoNewlines("couleur", couleur, 41);
cgiFormStringNoNewlines("choix",choix,41);
cgiHeaderContentType("text/html"); /* en-tete MIME: type de document */
fprintf(cgiOut,"<html>\n");
fprintf(cgiOut,"<head>\n");
fprintf(cgiOut,"<title>%s</title>\n", TITRE);
fprintf(cgiOut,"</head>\n");
fprintf(cgiOut,"<body bgcolor=\"dddddd\">\n");
fprintf(cgiOut,"<h1>%s</h1>\n", TITRE);
fprintf(cgiOut,"<hr>\n");
/*
* ici commence le traitement
* ATTENTION: ce processus s'execute sous le controle du serveur httpd
* avec l'uid de nobody et non celui de l'utilisateur.
*/
fprintf(cgiOut,"<b>%s %s</b>, dont la couleur favorite est <b>%s</b>,
vous avez répondu <b>%s</b> à la question\n",
prenom, nom, couleur, choix);
/*
* ici se termine le traitement
*/
fprintf(cgiOut,"<hr>\n");
fprintf(cgiOut,"</body>\n");
fprintf(cgiOut,"</html>\n");
return 0;
}
Compilation et édition des liens du Source C CGI
- Le compilateur C doit être C-ANSI
- La bibliothèque "libcgicenst.a" doit exister (par ex.
"/usr/local/lib/libcgicenst.a")
- L'exécutable doit être
placé sous le répertoire ~/public_html
- L'exécutable doit être suffixé par .cgi
- L'exécutable doit être exécutable par tous (mode 755)
- Exemple :
cd ~/public_html
gcc formulaire.c -o formulaire.cgi -L./ -lcgicenst
chmod 755 formulaire.cgi