| How to 
                      Install a CGI Script and Increase Web Site Interactivity
 © Herman Drost
 
 You may have delayed cgi script installation due 
                      to the 
                      apparently complex
 process. Well, I avoided it also for several years, 
                      however if you want to
 increase your web site's interactivity it's a necessity to 
                      know how to do it.
 It's not hard to learn and you don't have to be a 
                      programmer.
 
 What is CGI ?
 
 Common Gateway Interface or CGI is a program that can 
                      interact with an
 html form on your web site, and processes the results on 
                      your server using
 a cgi script. The result generated is a dynamic web page. 
                      The cgi script is
 written in a language called PERL ("practical extraction 
                      and reporting
 language").
 
 Uses of CGI Scripts
 
 CGI scripts are most commonly used for creating user 
                      interaction with an html
 form on your web site. Other uses include: autoresponders, 
                      shopping carts,
 counters, mailing list managers, ad management, surveys, 
                      polls, discussion
 boards, content management, calendars and click tracking.
 
 There are 100s of free cgi scripts that can be found on 
                      the Net. Just do a search
 on Google for "free cgi scripts" or visit the resources at 
                      the end of this article.
 
 We will create an html email form to collect the name, 
                      email address and
 comments of subscribers using a secure cgi formmail 
                      script. An automatic
 confirmation will be sent and the results of the email 
                      form will be passed
 on to your email address.
 
 Steps to installing your own cgi script
 
 1. Check that your web host supports CGI - your web 
                      host will have a cgi-bin
 folder installed on the server. The cgi-bin is a special 
                      directory in the server
 where all the files which require security are kept. This 
                      is where you will
 upload your cgi script once it has been modified.
 
 2. Download the cgi script - this is a secure cgi 
                      formmail script. Spammers
 can't access and harvest your email address from this 
                      script.
 
 http://nms-cgi.sourceforge.net/formmail.zip
 
 3. Read the documentation that comes with the 
                      script - this will give you a
 thorough understanding what changes you need to make to 
                      have it work
 correctly with your web site and server. It will also 
                      provide you with some
 examples.
 
 Editing your script
 
 4. Open and edit your cgi script using notepad 
                      (don't use an html editor as this
 can create errors).
 
 5. Remove the html tags from the script (at the top 
                      and bottom).
 
 6. Change the path to perl to: #!/usr/bin/perl -wT 
                      (this is the first line of the
 script to be edited).
 
 7. Edit the script - the bolded section of the cgi script 
                      shown below, are the other minimum fields to fill out in 
                      the script.  Replace the fields in the script you 
                      downloaded with the bolded fields in the script 
                      below.
 
 
 # USER CONFIGURATION SECTION
 # --------------------------
 # Modify these to your own settings. You might have to
 # contact your system administrator if you do not run
 # your own web server. If the purpose of these
 # parameters seems unclear, please see the README file.
 #
 BEGIN
 {
 $DEBUGGING = 1;
 $emulate_matts_code= 0;
 $secure = 1;
 $allow_empty_ref = 1;
 $max_recipients = 1;
 $mailprog = '/usr/lib/sendmail -oi -t';
 $postmaster = 'youraddress@yourdomain.com';
 @referers = qw(yourdomain.com);
 @allow_mail_to = qw();
 @recipients = ();
 %recipient_alias = ('siteowner' => 'youraddress@yourdomain.com',);
 @valid_ENV = qw(REMOTE_HOST REMOTE_ADDR REMOTE_USER 
                      HTTP_USER_AGENT);
 $locale = '';
 $charset = 'iso-8859-1';
 $date_fmt = '%A, %B %d, %Y at %H:%M:%S';
 $style = '';
 $no_content = 0;
 $double_spacing = 1;
 $wrap_text = 0;
 $wrap_style = 1;
 $send_confirmation_mail = 0;
 $confirmation_text = <<'END_OF_CONFIRMATION';
 From: youraddress@yourdomain.com
 Subject: Subject of Your Contact Form
 
 (short note here->> )Thank you for your interest. We will 
                      respond shortly.
 
 END_OF_CONFIRMATION
 #
 # USER CONFIGURATION << END >>
 # ----------------------------
 # (no user serviceable parts beyond here)
 --------------------------------------------------------------------------------
 
 $postmaster = Who's sending the email
 @referrers = Domains that are allowed to host the script
 %recipient_alias = Whom the script will send email to
 
 In my form:
 
 <form action="http://www.mydomain.com/cgi-bin/formmail.pl"
 method="POST">
 <input type="hidden" name="recipient" value="siteowner">
 
 You can see how the siteowner variables match up in the 
                      .pl script and in my
 form. This way, nobody can tell what address the form 
                      is being emailed to!
 
 8. Rename your cgi script - name your script 
                      something else besides
 formmail (ie contactus.pl), as this is the most common name people use.
 This will prevent spammers from harvesting your email 
                      address.
 
 9. Create your html form
                      (contactus.htm)
 
 <html>
 <head>
 <title>Contact Us</title>
 </head>
 <body bgcolor="#FFFFFF" text="#000000">
 <form method="post" action="http://www.yourdomain.com/
 cgi-bin/contactus.pl">
 <input type=hidden name="recipient" value="siteowner">
 <input type=hidden name="subject" value="Subscribe Me 
                      Please">
 <input type=hidden name="required" value="fullname,email">
 <input type=hidden name="redirect" value="http://www.yourdomainname.com/thankyou.htm">
 Full Name<br>
 <input type=text name="fullname">
 <br>
 Email Address<br>
 <input type=text name="email"><br>
 <br>
 Comments<br>
 <textarea name="comments"></textarea>
 <br>
 <br>
 <input type="submit" name="Submit" value="Submit">
 </form>
 </body>
 </html>
 
 10. Create a confirmation page (ie thankyou.htm) - 
                      this will automatically
 thank people for filling in your form. It can be a simple 
                      html page with the
 comments "Thank you for your interest. We will respond 
                      shortly".
 
 Uploading the cgi script and html email form.
 
 Use your favorite FTP program for uploading to your server 
                      (I use
 SmartFTP.com which you can download for free).
 
 11. Set permissions to 755 - in SmartFTP right 
                      click on the script file you
 wish to upload, click on Properties/CHMOD and set the 
                      permissions to 755.
 
 12. Upload the cgi script - there are two modes of 
                      uploading, ASCII and Binary.
 Upload the cgi script (contactus.pl) and any txt files in 
                      ASCII mode. Upload
 the script to the cgi-bin folder. If you don't follow this 
                      you will not be able to
 execute the script.
 
 13. Upload the html form and any image files like .jpg 
                      or .gif in Binary mode.
 
 14. Test your cgi script by filling out the html 
                      email form and submitting it.
 You should receive an immediate confirmation.
 
 By adding interactivity to your web site using a cgi 
                      script, you can expand the
 functions of your web site and create a more interesting 
                      experience for your
 visitors. This will keep them coming back and help you 
                      stay ahead of your
 competitors.
 
 Resources
 
 Formmail script
 
 Free CGI scripts
 Scriptarchive.com
 Hotscripts.com
 cgi-resources.com
 | Subscribe
                        FREE to Marketing
                        Tips Newsletter
 
 
 NEW
                        Ebook101 Highly Effective
                        Strategies to Promote Your Web Site
 
                         
 
                        Hosting
                        from $30/year 
   |