'===========================================================================
' Subject: HOW TO WRITE CGI PROGRAMS Date: 09-23-99 (08:21)
' Author: Quinn Tyler Jackson Code: PBDLL
' Origin: qjackson@wave.home.com Packet: PBDLL.ABC
'===========================================================================
' PbCgi.bas
'
' This demonstrates how to write a CGI program with PowerBASIC/DLL 6.0.
'
' Written by Quinn Tyler Jackson
' email: quinn@qtj.net
' url: http://www.qtj.net/~quinn/
'
#COMPILE EXE "PBCGI.EXE"
#INCLUDE "win32api.inc"
OPTION EXPLICIT
FUNCTION Html_Document(Doc AS STRING) AS STRING
FUNCTION = "" + Doc + ""
END FUNCTION
FUNCTION Html_Title(Title AS STRING) AS STRING
FUNCTION = "
" + Title + ""
END FUNCTION
FUNCTION Html_Body(Body AS STRING) AS STRING
FUNCTION = "" + Body + ""
END FUNCTION
FUNCTION Html_Header(Level AS INTEGER, Header AS STRING) AS STRING
DIM L AS STRING
L = LTRIM$(STR$(Level))
FUNCTION = "" + Header + ""
END FUNCTION
FUNCTION Html_Line(theText AS STRING) AS STRING
FUNCTION = theText + "
"
END FUNCTION
FUNCTION Html_Center(theText AS STRING) AS STRING
FUNCTION = "" + theText + ""
END FUNCTION
FUNCTION Html_Link(theText AS STRING, theLink AS STRING) AS STRING
FUNCTION = "" + theText + ""
END FUNCTION
FUNCTION CGI_SendResponse(Response AS STRING) AS INTEGER
DIM i AS INTEGER
DIM psz AS DWORD
psz = STRPTR(Response)
DIM dwLen AS LONG
dwLen = LEN(Response)
WriteFile GetStdHandle(%STD_OUTPUT_HANDLE), BYVAL psz, dwLen, dwLen, BYVAL %NULL
END FUNCTION
FUNCTION PBMAIN
CGI_SendResponse _
Html_Document(_
Html_Title("Power/CGI Demo") +_
Html_Body(_
Html_Center(Html_Header(1, "This CGI Page was created with PB/DLL 6.0")) + _
Html_Center(Html_Header(2, "Host: " + ENVIRON$("REMOTE_HOST"))) + _
Html_Center(Html_Link("All the more reason to consider PB/DLL...", _
"http://www.powerbasic.com")_
)_
)_
)
END FUNCTION