testcgi

{$mode objfpc}
{$H+}
 
program testcgi;
 
uses cgiapp,classes,sysutils;
 
Type
  TTestCGI = Class(TCGIApplication)
    Procedure DoRun; override;
  end;
 
Procedure TTestCGI.DoRun;
 
Var
  L : TStrings;
  I: Integer;
 
begin
  ContentType:='text/html';
  EmitContentType;
  L:=TStringList.Create;
  Writeln('<HTML><TITLE>',title,'</TITLE><BODY>');
  Try
    Writeln('<H1>List of CGI variables:</H1>');
    GetCGIVarList(L);
    For I:=0 to L.Count-1 do
      Writeln(L[i],'<BR/>');
    Writeln('<H1>List of environment variables:</H1>');
    GetEnvironmentList(L);
    For I:=0 to L.Count-1 do
      Writeln(L[i],'<BR/>');
    If (RequestVariableCount>0) then
      begin
      Writeln('<H1>List of form variables:</H1>');
      GetRequestVarList(L);
      For I:=0 to L.Count-1 do
        Writeln(L[i],'<BR/>');
      Writeln('<H1>List of form variables, tabular format:</H1>');
      Writeln('<table width="100%" border="1">');
      Writeln('<TR><TH>Name</TH><TH>Value</TH></TR>');
      GetRequestVarList(L,True);
      For I:=0 to L.Count-1 do
        Writeln('<TR><TD>',L[i],'</TD><TD>',RequestVariables[L[i]],'</TD></TR>');
      end;
  Finally
    Writeln('</BODY></HTML>');
    Terminate;
  end;
end;
 
begin
  With TTestCGI.Create(Nil) do
    Try
      Title:='Test CGI application';
      Initialize;
      Run;
    Finally
      Free;
    end;
end.
 

¿Has encontrado algún error? ¿Tienes la solución? Dejame tu correción ;-)

Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.

Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:

  • Si es lenguaje C [c]Código en C[/c]
  • Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].

De esta manera el código coloreas el código.

Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:

Me reservo el derecho de alterar, publicar o no los comentarios as´ como cambiar mis condiciones en el momento que así lo requiera.

¿estas de acuerdo? entonces adelante que ya te he quitado bastante tiempo leyendo esta basura de advertencias :)