Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/05/2008, 04:01
edude
 
Fecha de Ingreso: marzo-2007
Mensajes: 89
Antigüedad: 17 años, 2 meses
Puntos: 0
Como hacer funcionar aplicaciones CGIs

Hola, buenos días,

estoy intentando hacer funcionar en local un ejemplo sencillito de un CGI, pero no me funciona. Estoy programándolo en linux y no se si es preciso configurar algún parametro para que funcione en local y poder hacer pruebas...

El programa consta de un un formulario html:
...
FORM ACTION="./prueba_cgi.cgi" method="get">
Numeros:
INPUT NAME="m" SIZE="5"
INPUT NAME="n" SIZE="5"
INPUT TYPE="SUBMIT" VALUE="Multiplicar"
/FORM
...

y un programa en C que recupera los valores y los multiplica:

#include <stdio.h>
#include <stdlib.h>

int main( int argc, char * argv[] ) {
char *data;
long m,n;

printf( "%s%c%c\n", "Content-Type:text/html;charset=iso-8859-1", 13, 10 );
printf( "<TITLE>Resultado de la multiplicacion</TITLE>\n" );
printf( "<H3>Resultados</H3>\n" );

data = getenv( "QUERY_STRING" );

if( data == NULL ) {
printf("<P>Error! Error in passing data from form to script.");
} else if( sscanf( data, "m=%ld&n=%ld", &m, &n ) != 2 ) {
printf("<P>Error! Invalid data. Data must be numeric.");
} else {
printf("<P>Multiplicacion de %ld * %ld es %ld.", m, n, m*n );
}

return 0;
}

Pero no funciona. No me ejecuta el programa C.
Saben por qué puede ser? Es necesario configurar algo para que funcione?

Gracias por la ayuda!!