Beginners Guide
to an
Interactive Web Page


Domain: 'chapters.sme.org'

This Web Page was created by Bill Sharpe © 2000.

Isn't it time to put your meeting notice on the Web?

Contents

 

CGI History @ chapters.sme.org

Chapter Technical Meeting Notices - Electronically

In the winter of 2000, Jim Smith ( SmitJim@sme.org ) at SME International, has implemented a CGI (Common Gateway Interface) capability for the 'chapters.sme.org' domain. We have been successful and have a experimental page in place. Feel free to experiment with this electronic meeting notice and make sure your chapter webmasters are made aware of this new capability. If you need more details please feel free to contact me.

At Region 9 a demo "Technical Meeting Notice"...

         http://chapters.sme.org/09/demo/mtgnotice/index.stm

If you submit your demo'd intentions to attend this dummy meeting it will reply with time with an email to remind you to calendar this event. The reply is contingent on you providing a good email address. Additionaly the first two records (semicolon delimited) in this email are structured to be easily included into a spreadsheet for the meetings management committee (head count) and Certification committee (credits).

This capability can be applied to any SME local chapter within the domain 'chapters.sme.org'.

I have applied the technique to Chapter 186's March "Technical Meeting Notice" page and is working so well that when a "Joint Technical Meeting" of engineering society's was to be held in my local chapter, SME was approached about providing a online registration web page.

Please take a moment to consider the possibilities for yourself and SME. Thank you and best success.


WWW HTML FORM...........

The World Wide Web (CERN) , as it is known today, can be interactive allowing the collection of user input as you may have exercised in the above sited example. At domain "chapters.sme.org" we are using a utility for the MS-WindowsNT ISS called "BLAT" that is envoked with a PERL script from a web submitted HTML FORM. Used in a HTML FORM and "hypertext system" it will pass the users input into an email message that targets individuals or groups of individuals. The use of a WWW HTML FORM has three main goals:

  • A universal user interface that is not dependent on the desktop browsers configuration to work.
  • The ability to query membership regarding their intent or preferences and pass that information to those who need it.
  • To be able to call the pre-programed CGI Perl script from within any sub-directory in the 'chapters.sme.org' domain. Creat one script and call it many times.
    WARNING: Blat (the utility) is freeware supplied with full source code and as such the authors provide no support.

What is a HTML FORM ?

A HTML FORM is a element of a WWW page that permits a visitor of the page to input data and submit it to a CGI (Common Gateway Interface).


What is CGI?

CGI refers to electronic program on the web server that "links" user browser input to a central utility (Email, database, analysis, etc.). In this case the CGI is two programs choregraphed together from within a web page. The first is the PERL (Practical Extraction and Report Language) Script and the second is the BLAT utility. The CGI HTML FORM does not require the users internet browser to be configured in anyway but to simply load the page and submit their input. The CGI takes over and processes the input as it is coded. In the instance sited here the PERL script passes the web page HTML FORM input to a installed system utility called BLAT.


What is PERL?

PERL stands for Practical Extraction and Report Language. This is a portable standard set of codes or "tags" that are installed on a server that is to process HTML FORM input and output. Perl is a programming language developed by Larry Wall, especially designed for processing text. Because of its strong text processing abilities, Perl has become one of the most popular languages for writing CGI scripts . Perl is an interpretive language, which makes it easy to build and test simple programs. HTML.


How is the CGI employed?

CGI Use is done with a few HTML tags that are related to the HTML FORM tag. The <FORM> tag is coded something like this....


From the Demo page... ( demo page )
First Insert the following HTML FORM tag...

    <FORM METHOD="POST" ACTION="/cgi-09/mtgnotice1.pl">
This will be ended later in the page with the </FORM> HTML tag.


First Insert the following HTML INPUT tag(s)...

    <INPUT TYPE="HIDDEN" NAME="junk">    <!--- Required INPUT statement for this PERL script --->
The appropriate <INPUT> tags are listed in the table that follows.

    Other "HIDDEN" tags follow in a similar fashion
<INPUT TYPE="HIDDEN" NAME="mailto" VALUE="YourEmail@Email.com,AssocEmail@Email.com"> <!--- Who's to get the email --->

<INPUT TYPE="HIDDEN" NAME="PageURL" VALUE="http://chapters.sme.org/09/demo/mtgnotice/index.stm"> <!--- Input source web page --->

    The viewable <INPUT> tags follow in the following manor.
Your email address:<BR><INPUT TYPE="TEXT" NAME="mailcc" SIZE="25"> <!--- users email address for cc --->
    Looks like this on the page...

      Your email address:



Your name:<BR><INPUT TYPE="text" NAME="FullName" SIZE="20"> <!--- users name --->
    Looks like this on the page...

      Your name:


What are the CGI variable names and what are their values?

The setting of these HTML FORM tags variable NAME(s) must match the names used within the PERL CGI on the web server in order to work. A mismatch (case sensitive) will fail to pass the users input on the miss matched INPUT. The following is a listing of those INPUT variable names and how they are set on the HTML FORM for this example.

NAME (case sensitive) VALUE (not case sensitive)
junk Required: not used (sacrifical)
   Usage: <INPUT TYPE="HIDDEN" NAME="junk">
mailto Should be set (usually with a HIDDEN INPUT HTML statement) "MyEmailAddress@YouKnowWhere.com"
   Usage: <INPUT TYPE="HIDDEN" NAME="mailto" VALUE="SharpeWilliamR@JohnDeere.com,Sharpe@CedarNet.org">
PageURL Should be set (usually with a HIDDEN INPUT HTML statement) "chapters.sme.org/.../...."
   Usage: <INPUT TYPE="HIDDEN" NAME="PageURL" VALUE="http://chapters.sme.org/09/demo/mtgnotice/index.stm">
MailFrom Set by SME International web server.
FullName Full name provided by the HTML FORM submitter.
   Usage: <INPUT TYPE="TEXT" NAME="FullName" SIZE="20">
MemberNo Member number provided by the HTML FORM submitter. Preloaded with "non-member".
   Usage: <INPUT TYPE="TEXT" NAME="MemberNo" SIZE="10" VALUE="non-member">
CertNo Certification number provided by the HTML FORM submitter.
   Usage: <INPUT TYPE="TEXT" NAME="CertNo" SIZE="10">
subject Should be set (usually with a HIDDEN INPUT HTML statement) "Monthly Technical Meeting"
   Usage: <INPUT TYPE="HIDDEN" NAME="subject" VALUE="Monthly Technical Meeting">
topic Should be set (usually with a HIDDEN INPUT HTML statement) "Tour of ....."
   Usage: <INPUT TYPE="HIDDEN" NAME="topic" VALUE="Tour of .....">
CPhone Should be set (usually with a HIDDEN INPUT HTML statement) "319/292-8793"
   Usage: <INPUT TYPE="HIDDEN" NAME="CPhone" VALUE="319/292-8793">
date Should be set (usually with a HIDDEN INPUT HTML statement) "20Oct2000"
   Usage: <INPUT TYPE="HIDDEN" NAME="date" VALUE="20Oct2000">
loc10 Should be set (usually with a HIDDEN INPUT HTML statement) "Hyw 71"
   Usage: <INPUT TYPE="HIDDEN" NAME="loc10" VALUE="Hyw 71">
loc11 Should be set (usually with a HIDDEN INPUT HTML statement) "Village East Resort"
   Usage: <INPUT TYPE="HIDDEN" NAME="loc11" VALUE="Village East Resort">
loc12 Should be set (usually with a HIDDEN INPUT HTML statement) "Okoboji, IA"
   Usage: <INPUT TYPE="HIDDEN" NAME="loc12" VALUE="Okoboji, IA">
loc20 Should be set (usually with a HIDDEN INPUT HTML statement) "Bayhill Room"
   Usage: <INPUT TYPE="HIDDEN" NAME="loc20" VALUE="Bayhill Room">
loc21 Should be set (usually with a HIDDEN INPUT HTML statement) "Table A"
   Usage: <INPUT TYPE="HIDDEN" NAME="loc21" VALUE="Table A">
loc22 Should be set (usually with a HIDDEN INPUT HTML statement) "Seat 12"
   Usage: <INPUT TYPE="HIDDEN" NAME="loc22" VALUE="Seat 12">
HomePhone1 Home phone number provided by the HTML FORM submitter "319/277-4779"
   Usage: <INPUT TYPE="TEXT" NAME="HomePhone1" SIZE="11">
WorkPhone1 Work phone number provided by the HTML FORM submitter "319/292-8793"
   Usage: <INPUT TYPE="TEXT" NAME="WorkPhone1" SIZE="11">
HomeEmail1 Home email address provided by the HTML FORM submitter "Sharpe@cedarnet.org"
   Usage: <INPUT TYPE="TEXT" NAME="HomeEmail1" SIZE="25">
WorkEmail1 Work email address provided by the HTML FORM submitter "SharpeWilliamR@JohnDeere.com"
   Usage: <INPUT TYPE="TEXT" NAME="WorkEmail1" SIZE="25">
MenuOption Menu selection provided by the HTML FORM submitter "Chicken Kiev"
   Usage: <INPUT TYPE="TEXT" NAME="MenuOption" SIZE="12">
Comment Comments provided by the HTML FORM submitter "Can I take photos?"
   Usage: <TEXTAREA NAME="Comment" rows="3" cols="25"></TEXTAREA>
reminder1 Should be set (usually with a HIDDEN INPUT HTML statement) "PLEASE!: ADD THIS EVENT TO YOUR CALENDAR."
   Usage: <INPUT TYPE="HIDDEN" NAME="reminder1" VALUE="PLEASE!: ADD THIS EVENT TO YOUR CALENDAR.">
reminder2 Should be set (usually with a HIDDEN INPUT HTML statement) "SAFETY GEAR REQUIRED."
   Usage: <INPUT TYPE="HIDDEN" NAME="reminder2" VALUE="SAFETY GEAR REQUIRED."">

What does the PERL script look like?

Click the like for a file transfer (download) of the source code.

If you need any further information on anything Web or PC related, drop us an e-mail.

Thanks for stopping by.