Home Servizi Portfolio Curriculum Preventivi Download Contatti English
  Realizzare programmi CGI in C   Pubblicità  
  Realizzare programmi CGI in C in ambiente GNU/Linux.

In questo articolo mostriamo un esempio completo con il fine di poter mettere l'utente nelle condizioni di fare i primi passi con i CGI.

Per alcune nozioni introduttive invitiamo a leggere i seguenti articoli:

http://it.wikipedia.org/wiki/Common_Gateway_Interface

http://hoohoo.ncsa.uiuc.edu/cgi/



Collochiamo in una pagina web la seguente form html:

<FORM ACTION="http://www.nomedeldominio.com/cgi-bin/somma.cgi">
Introduci due valori da sommare
<INPUT NAME="a" SIZE="5">
<INPUT NAME="b" SIZE="5"><BR/>
<INPUT TYPE="SUBMIT" VALUE="Somma">
</FORM>


Ecco invece il sorgente del CGI in C da compilare (da chiamare somma.cgi e collocare nella cartella cgi-bin):

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char *data;
long a,b;
printf("%s%c%c\n",
"Content-Type:text/html;charset=iso-8859-1",13,10);
printf("<TITLE>Risultato della somma</TITLE>\n");
printf("<H3>Risultato della somma</H3>\n");
data = getenv("QUERY_STRING");
if(data == NULL)
printf("<P>Errore! Dati non presenti.");
else if(sscanf(data,"a=%ld&b=%ld",&a,&b)!=2)
printf("<P>Errore! Dati non validi.");
else
printf("<P>La somma di %ld e %ld è %ld.",a,b,a+b);
return 0;
}


Consigli pratici

La cartella cgi-bin deve avere i permessi settati a 750 altrimenti il server potrebbe restituire un "internal error". Un ulteriore consiglio è quello di dare i seguenti permessi al file cgi:

chmod 755 somma.cgi

Assicurarsi che il proprietario del file sia proprio l'utente associato al dominio:

chown nomeutente somma.cgi


Indice argomenti
   
   
  Copyright © 2006-2007    EDwareLab    P. IVA: 05541440961

Valid XHTML 1.0 Strict CSS Valido!