.ig >>
<STYLE TYPE="text/css">
<!--
        A:link{text-decoration:none}
        A:visited{text-decoration:none}
        A:active{text-decoration:none}
        OL,UL,P,BODY,TD,TR,TH,FORM { font-family: arial,helvetica,sans-serif;; font-size:small; color: #333333; }

        H1 { font-size: x-large; font-family: arial,helvetica,sans-serif; }
        H2 { font-size: large; font-family: arial,helvetica,sans-serif; }
        H3 { font-size: medium; font-family: arial,helvetica,sans-serif; }
        H4 { font-size: small; font-family: arial,helvetica,sans-serif; }
-->
</STYLE>
<title>quisp: quisp variables</title>
<body bgcolor=99cc99 vlink=0000FF>
<br>
<br>
<center>
<table cellpadding=2 bgcolor=FFFFFF width=550 ><tr>
<td align=right><a href="quisp_home.html">
<img src="img/quisp2.gif" border=0><br><small>quick server pages</a> &nbsp; &nbsp; </td></tr>
<td>
.>>

.TH QUISP variables TDH "13-APR-2004   TDH scg@jax.org" 


.ig >>
<br><br><br>
.>>

.SH Variables
QUISP uses variables.  QUISP variables can be set by incoming CGI user variables (in the URL or
submitted via a POST operation).  They can also be set within a script using the \fC#set\fR
directive.  When a variable's contents are being displayed or referenced the variable name
is written beginning with an at-sign (@).

.LP
Variable names must begin with a letter and may contain letters, digits, and underscore.
(Variable names originating from an sql join result will contain an embedded period.)
Names are case-sensitive.  Maximum length of a variable name is 38 characters.
Variables are delimited by whitespace and any punctuation character except underscore and period
(so something like \fC @a.@b \fR will not work because the period is taken
to be part of the variable name).
.LP
Variables may hold numbers, alphanumerics, or 
.ig >>
<a href="commalist.html">
.>>
\0lists,
.ig >>
</a>
.>>
but are always stored in alphanumeric form, with a maximum content length is 250 characters.
All variables are global in scope across page templates within a process.
.LP
An at-sign (\fC@\fR) is used at the beginning of a variable name when its contents 
are to be displayed or referenced.
Otherwise, the at-sign should not be used.
Examples:
.nf
        \0Hello, my name is @NAME
        \0#set NAME = "Harvey Smith"
	\0#if @mode = 2
.fi

.LP
An attempt to display or reference the contents of a variable that has never been assigned a value
will result in cancellation of the evaluation (the variable name will be
displayed transparently) and no error condition will be raised.

.ig >>
<br><br><br>
.>>
.SH Special variables
The following special variables exist:
.LP
\fB@CGIPROG\fR . . . the full path name of the QUISP cgi executable.  
.ig >>
<a href="links.html">
.>>
\0More info
.ig >>
</a>
.>>
.LP
\fB@HTMLURL\fR . . . the URL of a directory where static HTML, images, etc. reside
.ig >>
<a href="links.html">
.>>
\0More info
.ig >>
</a>
.>>
.LP
\fB@HTMLPATH\fR . . . the file system path name equivalent of HTMLURL 
.ig >>
<a href="shell.html">
.>>
\0More info
.ig >>
</a>
.>>
.LP
\fB@PROJDIR\fR . . . the file system path name of your project directory
.ig >>
<a href="shell.html">
.>>
\0More info
.ig >>
</a>
.>>
.LP
\fB@QUISP_VERSION\fR . . . the version of QUISP that you are running

.ig >>
<br>
<br>
</td></tr>
<td align=right>
<a href="quisp_home.html">
<img src="img/quisp2.gif" border=0></a><br>
<small>quick server pages &nbsp; &nbsp;<br>
<a href="Copyright.html">Copyright Steve Grubb</a> &nbsp; &nbsp;
</td></tr>
</table>
.>>
