Sign in Join
Wiki copytemporary

CGI Web Programming/es

Bahasa Indonesia · English · Español · Français · Русский · 中文(中国)

Este es el comienzo de una tutoría sobre programación web con la interfaz CGI. Estáis Todos invitados a contribuir.

Sobre CGI

CGI Interfaz de entrada común (Common Gateway Interface) funciona de forma sencilla:

Tenemos dos equipos:

Usted puede utilizar CGI sólo si su servidor cuenta con soporte para CGI. Trás el alojamiento, CGI puede ser utilizado normalmente así: **http://www.turservidor.es\[.xx\]/tuAutenticación/cgi-bin/nombredetucgi\[.exe\]**

Notas:

Sobre FreePascal CGI y cómo puedes probar tus módulos CGI

Un Free Pascal CGI es un programa ejecutable normal, como cualquier programa de tu ordenador. A diferencia de los CGI en Perl, Free Pascal CGI no es interpretado. Es un programa ejecutable independiente.

Para probar un CGI, debes tener instalado en tu PC un Servidor HTTP con soporte para CGI. Un Servidor HTTP bueno, y recomendable es http://es.wikipedia.org/wiki/Servidor_HTTP_Apache Apache], disponible para Linux y Windows. Otro Servidor HTTP es Xitami que soporta CGI en perl y 16 bits (pero Xitami es muy arcaico).

Un ejemplo muy básico

Este es un ejemplo de un programa CGI mínimo que muestra...

  1. Configuración de una galleta (cookie)
  2. Generar el tipo de contenido (es decir, enviar texto válido para HTTP)
  3. Leer galletas (cookies)
  4. Leer datos de un formulario a través de GET
  5. Leer datos de un formulario a través de POST
pascal
 program mini;

 uses dos;

 var
   a:string;
   c:char;
 begin
   //set a cookie (must come before content-type line below)
   //don't forget to change the expires date
 writeln('Set-cookie:widget=value; path=/; expires= Mon, 21-Mar-2005  18:37:00 GMT');

   //output legal http page
   writeln('Content-Type:text/html',#10#13);

   //demonstrate get cookies
   a:= GetEnv('HTTP_COOKIE');
   writeln('cookies:',a);
  
   //demonstrate GET result
   a:='';
   a:= GetEnv('QUERY_STRING');
   writeln('GET: ',a);
    
   //demonstrate POST result 
   a:='';
   while not eof(input) do
    begin
      read(c);
      a:= a+c;
    end;     
   writeln('POST: ',a);
  end.

Un contador simple

La aplicaciónn hitcounter presenta un simple contador para tu sitio web. Es posible poner en listas de bloqueo en un archivo de configuración para así excluir los robots y tal vez tu propio ordenador de las estadísticas. Quedan un montón de mejoras posibles, como por supuesto establecer de una cookie para obtener sólo un recuento por sesión, pero da una buena introducción a la programación CGI. Si utilizas el código y lo modificas, por favor, envíame un parche para poder actualizarlo.

Puedes encontrar el código aquí: 1

Marcos de trabajo para CGI existentes

Existen unidades de CGI y los Marcos de trabajo que hacen el trabajo con CGI trivial (y permiten establecer las cookies, sesiones, recuperar POST y GET). VerPowtils

También hay un CGIModule para lazarus, y unos pocos unidades para CGI y HTML en la FCL de freepascal.

Otro marco para CGI y FastCGI para FreePascal / Delphi es ExtPascal un envoltorio Ext JS.


From the Free Pascal wiki, page "CGI Web Programming/es", as it stood on 2020-02-10 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Revision 1, last changed by WikiArchive .

Talk about this page

Nobody has opened a bench for this page yet. Sign in to open one.