The Potential of CGI: Using Pre-Built CGI Scripts to Make Interactive Web Pages.

The Web is full of freeware or pre-built CGI scripts available for anyone to download and configure. Not only do these pre-built scripts quickly make library Web pages more interactive, but they also provide librarians with a beginning tutorial in CGI programming languages. This article targets librarians who know HTML but have not yet learned programming languages such as Perl, and looks at the different types of CGI scripts available on the Web, CGI security issues, some basics on Perl, and forms used with CGI scripts. Hyper Text Markup Language (HTML) is a simple language easily learned and utilized by librarians across the country. It takes very little time to learn and the benefits are almost immediate for more ambitious users. With all of the new and expanding technologies associated with the Web, librarians are now expected to learn more complex programming languages such as Perl or C and the intricacies of the Common Gateway Interface (CGI). Used appropriately these new languages can vastly improve library Web pages, making them more interactive and user friendly. But these languages take a great deal more effort to learn and master. Taking the time to learn these languages is still the best option, but there is a faster way to become functional. Fortunately, the Web is full of freeware programs and scripts that take most of the work out of learning these new languages and allow librarians to quickly make interactive Web pages. These freeware programs also demonstrate the potential of CGI scripts and provide a good starting point for anyone interested in learning CGI programming languages such as Perl. What follows is a discussion of the Common Gateway Interface (CGI), types of freeware scripts available on the Web, security issues involved with CGI, and the ease with which librarians with knowledge of HTML and simple UNIX may begin to assimilate these scripts into their own Web pages. CGI Quite simply, CGI is a standard by which a Web server and an external program or application communicate. It is the set of rules and guidelines that allow a CGI script to function. In a Web server environment, text-based HTML pages reside within the server hierarchy and are retrieved based on client request. These HTML pages are static in that they do not change when moving from the server to end user. However, with CGI programs or scripts, Web pages and HTML can be dynamic, meaning that when activated, the CGI script executes and creates real-time information. To put it another way, dynamic Web pages are not built using simple text-based HTML; rather, small CGI programs or scripts are used to create the HTML that a Web browser such as Netscape Navigator or Microsoft Internet Explorer then displays. CGI scripts are able to create these pages "on the fly," meaning that they can include information that changes based on user needs, or that cannot be determined in advance. CGI scripts can be used to ask for client-supplied data through HTML forms, to retrieve requested information, or to generate information or content customized by a particular user. [1] CGI programs may be written in a variety of programs such as C, C++, Visual Basic, Tcl, and Perl. In fact, CGI programs can be written in any language that can be executed on a computer. Perhaps the most common language used with CGI is Perl. Perl was first developed in 1986 by Larry Wall to run on a UNIX platform, but now also runs on Macintosh and Win32 based systems. Perl is an acronym for Practical Extraction and Report Language and is currently available in version 5.0. Within the CGI environment, Perl can be used to produce simple programs or scripts such as access counters and mail forms, as well as more advanced programs such as image maps, site or directory search engines, chat rooms, and bulletin boards (see figure 1). Figure 1 Example of a Perl Script # ! /usr/local/bin/perl # # ------------------------ # proquest. …