#!./basic rem rem example cgi-bin script written in chipmunk basic rem echos back the first 3 fields from a form rem v$ = errorstatus$ on error goto 1000: print "Content-type: text/html" print print "" print "Test of Chipmunk Basic CGI script" print "" print "

Test Output

" print "Hello! This is a CGI script written in Chipmunk Basic.

", print "basic version: ";v$ print "

" open "pipe:/usr/bin/date" for input as #1 else goto skip1: input #1,mydate$ print "The date is: ";mydate$;"

" skip1 : close #1 open "pipe:/usr/bin/pwd" for input as #1 else goto skip2: input #1,pwd$ print "The path is: ";pwd$;"

" skip2 : close #1 print "

" print "

environment variables

" print "
"

r$ = getenv$("REQUEST_METHOD")
print "env REQUEST_METHOD =	"; r$ : print

let q$ = getenv$("QUERY_STRING")
print "env QUERY_STRING =	"; q$
print

if (r$ = "GET")
  a$ = q$
endif

if (r$ = "PUT" or r$ = "POST")
  l = val(getenv$("CONTENT_LENGTH"))
  a$ = ""
  for i=1 to l
    a$ = a$ + inkey$
  next i
  print "stdin argument =    ",a$
  print
endif

if (len(a$) > 0)
  let i = 1
  while ( len(field$(a$,i,"&")) > 0 )
    let f$ = field$( field$(a$,i,"&"),2,"=")
    print "arg ";i;" =	";f$
    let i = i + 1
  wend
  print (i-1);" arguments"
  print
endif

print "env SERVER_NAME =	"; getenv$("SERVER_NAME") : print
print "env SERVER_PORT =	"; getenv$("SERVER_PORT") : print
print "env SERVER_SOFTWARE =	"; getenv$("SERVER_SOFTWARE") : print
print "env SERVER_PROTOCOL =	"; getenv$("SERVER_PROTOCOL") : print
print "env GATEWAY_INTERFACE =	"; getenv$("GATEWAY_INTERFACE") : print
print "env HTTP_ACCEPT =	"; getenv$("HTTP_ACCEPT") : print
print "env HTTP_REFERER =	"; getenv$("HTTP_REFERER") : print

print "env SCRIPT_NAME =	"; getenv$("SCRIPT_NAME") : print
print "env PATH_INFO = 		"; getenv$("PATH_INFO") : print
print "env CONTENT_TYPE =    	"; getenv$("CONTENT_TYPE") : print
print "env CONTENT_LENGTH =	"; getenv$("CONTENT_LENGTH") : print

print "env REMOTE_HOST =	"; getenv$("REMOTE_HOST") : print
print "env REMOTE_ADDR = 	"; getenv$("REMOTE_ADDR") : print
print "env REMOTE_USER = 	"; getenv$("REMOTE_USER") : print
print "env HTTP_USER_AGENT =	"; getenv$("HTTP_USER_AGENT") : print

print
print sys("pwd") : print

print "

" print "Test 5

" print "Done." print "" print open "example-basic-cgi-test.log" for append as #3 print #3, date$, time$ print #3, a$ close #3 bye 1000: rem an error occured print "error: ";errorstatus$;" occured.

" print "" bye rem by rhn@nicholson.com 96-Mar-11 rem Copyright 1996 Ronald H. Nicholson, Jr., All Rights reserved.