1program testweb; 2 3{$mode objfpc}{$H+} 4 5uses 6 Classes, SysUtils, httpdefs, custcgi,cgiapp,fphttp,fpcgi, 7 webutil, fpweb; 8 9Type 10 TMyWeb=Class(TCustomCGIApplication) 11 procedure HandleRequest(ARequest: TRequest; AResponse: TResponse); override; 12 end; 13 14procedure TMyWeb.HandleRequest(ARequest: TRequest; AResponse: TResponse); 15 16 Procedure AddNV(Const N,V : String); 17 18 begin 19 AResponse.Contents.Add('<TR><TD>'+N+'</TD><TD>'+V+'</TD></TR>'); 20 end; 21 22Var 23 I,P : Integer; 24 N,V : String; 25 26begin 27 With AResponse.Contents do 28 begin 29 BeginUpdate; 30 Try 31 Add('<HTML><TITLE>FPC CGI Test page</TITLE><BODY>'); 32 DumpRequest(ARequest,AResponse.Contents); 33 Add('<H1>CGI environment:</H1>'); 34 Add('<TABLE BORDER="1">'); 35 Add('<TR><TD>Name</TD><TD>Value</TD></TR>'); 36 For I:=1 to GetEnvironmentVariableCount do 37 begin 38 V:=GetEnvironmentString(i); 39 P:=Pos('=',V); 40 N:=Copy(V,1,P-1); 41 system.Delete(V,1,P); 42 AddNV(N,V); 43 end; 44 Add('</TABLE>'); 45 Add('</BODY></HTML>'); 46 Finally 47 EndUpdate; 48 end; 49 end; 50end; 51 52Procedure Run; 53 54begin 55 With TMyWeb.Create(Nil) do 56 try 57 Initialize; 58 Run; 59 Finally 60 Free; 61 end; 62end; 63 64begin 65 Run; 66end. 67 68