Hvis du har IIS i din windows-vers. og du downloader freeware-vers. fra
http://cgiexperten.com og du bruger httpfilter-componenten i et datamodul -
kan du med et program af nedenstående karakter få memo i en DbGrid, (de har osse eksempler med opdaterinsfunktioner, men det er i høj grad komplicerede ting).
program cgiwebProject1;
uses
Forms,
cgiwebUnit2 in 'cgiwebUnit2.pas' {DataModule2: TDataModule};
{$R *.RES}
begin
Application.Initialize;
Application.CreateForm(TDataModule2, DataModule2);
Application.Run;
end.
unit cgiwebUnit2;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, DBTables, HUtils, HttpEng, HDBUtils, GenEng;
type
TDataModule2 = class(TDataModule)
GeneralHttpEngine1: TGeneralHttpEngine;
HttpDBGrid1: THttpDBGrid;
HttpFileFilter1: THttpFileFilter;
Query1: TQuery;
Query1Genvej: TMemoField;
Query1Gruppe: TStringField;
procedure HttpFileFilter1HttpEntry(EntryName: String;
var Handled: Boolean);
procedure GeneralHttpEngine1ExecRequest(Sender: TObject);
procedure HttpFileFilter1HttpLogicalEntry(EntryName: String;
var Value: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
DataModule2: TDataModule2;
implementation
{$R *.DFM}
procedure TDataModule2.GeneralHttpEngine1ExecRequest(Sender: TObject);
begin
try
HttpFileFilter1.Put;
httpdbgrid1.Put;
except
On E : Exception do
begin
PutLine('<HTML><HEAD><TITLE>TheFile</TITLE></HEAD><BODY>');
PutLine('To run this example you have to put the file "File.htm" into your script directory !');
PutLine('Exception : ' + E.Message);
PutLine('</BODY></HTML>');
end;
end;
end;
procedure TDataModule2.HttpFileFilter1HttpEntry(EntryName: String;
var Handled: Boolean);
begin
{Convert to upper case}
EntryName:=AnsiUpperCase(EntryName);
{Check which entry and}
if EntryName='DATE' then
Put(DateToStr(Now))
else if EntryName='TEXT' then
begin
end
else
begin
//By setting handled to true you will automatically set the value to any corrsponding
// Form variable, server variable, TIME, DATE or RANDOM_HIDDEN_INPUT
Handled:=False;
end;
end;
procedure TDataModule2.HttpFileFilter1HttpLogicalEntry(EntryName: String;
var Value: Boolean);
var
H,M,S,MS : Word;
begin
EntryName:=AnsiUppercase(EntryName);
DecodeTime(Now,H,M,S,MS);
if EntryName='MORNING' then
Value:=(H>=4) and (H<12)
else if EntryName='AFTERNOON' then
Value:=(H>=12) and (H<19)
else if EntryName='EVENING' then
Value:=(H>=19) or (H<4)
else if EntryName='LATE' then
Value:=(H>=23) or (H<4);
end;
end.
unit FileD2;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
HUtils, HttpEng, GenEng, Db, DBTables, HDBUtils;
type
TDataModule1 = class(TDataModule)
GeneralHttpEngine1: TGeneralHttpEngine;
HttpFileFilter1: THttpFileFilter;
HttpDBGrid1: THttpDBGrid;
Query1: TQuery;
Query1Tilhorer: TStringField;
Query1Dato: TStringField;
Query1Genvej: TMemoField;
private
{ Private declarations }
public
{ Public declarations }
end;
var
DataModule1: TDataModule1;
implementation
{$R *.DFM}
end.