CGI 环境变量

SERVER_NAME         CGI脚本运行时的主机名和IP地址.
SERVER_SOFTWARE     你的服务器的类型如: CERN/3.0 或 NCSA/1.3.
GATEWAY_INTERFACE   运行的CGI版本. 对于UNIX服务器, 这是CGI/1.1.
SERVER_PROTOCOL     服务器运行的HTTP协议. 这里当是HTTP/1.0.
SERVER_PORT         服务器运行的TCP口,通常Web服务器是80.
REQUEST_METHOD      POST 或 GET, 取决于你的表单是怎样递交的.
HTTP_ACCEPT         浏览器能直接接收的Content-types, 可以有HTTP Accept header定义.
HTTP_USER_AGENT     递交表单的浏览器的名称、版本 和其他平台性的附加信息。
HTTP_REFERER        递交表单的文本的 URL,不是所有的浏览器都发出这个信息,不要依赖它
PATH_INFO           附加的路径信息, 由浏览器通过GET方法发出.
PATH_TRANSLATED     在PATH_INFO中系统规定的路径信息.
SCRIPT_NAME         指向这个CGI脚本的路径, 是在URL中显示的(如, /cgi-bin/thescript).
QUERY_STRING        脚本参数或者表单输入项(如果是用GET递交). QUERY_STRING 包含URL中问号后面的参数.
REMOTE_HOST         递交脚本的主机名,这个值不能被设置.
REMOTE_ADDR         递交脚本的主机IP地址.
REMOTE_USER         递交脚本的用户名. 如果服务器的authentication被激活,这个值可以设置。
REMOTE_IDENT        如果Web服务器是在ident (一种确认用户连接你的协议)运行, 递交表单的系统也在运行ident, 这个变量就含有ident返回值.
CONTENT_TYPE        如果表单是用POST递交, 这个值将是 application/x-www-form-urlencoded. 在上载文件的表单中, content-type 是个 multipart/form-data.
CONTENT_LENGTH      对于用POST递交的表单, 标准输入口的字节数.

例:HTML

<HTML>
        <HEAD>
          <TITLE>HTML Form Example</TITLE>
          <LINK rel="stylesheet" href="../css/perlcgi.css" type="text/css">
        </HEAD>
        <BODY>
          <FORM method="GET" action="/cgi-bin/lesson2.pl">
            <h3>Your First Name:</h3>
            <p><INPUT type="text" name="FirstName"></p>
            <h3>Your Last Name:</h3>
            <p><INPUT type="text" name="LastName"></p>
            <h3>Check if you are a student:</h3>
            <p><INPUT type="checkbox" name="isStudent"></p>
            <h3>What is your gender?</h3>
            <p>
              <INPUT type="radio" name="Gender" value="isMale">Male
              <INPUT type="radio" name="Gender" value="isFemale">Female
            </p>
            <h3>How many moons are there on your planet?</h3>
            <p>
            <SELECT name="numMoons" size="5">
              <OPTION value="1" selected>Only One Moon
              <OPTION value="2">Two Nice Moons
              <OPTION value="3">A Fine Triplet
              <OPTION value="4">Four Celestial Bodies
              <OPTION value="5-8">Between Five and Eight
              <OPTION value="9-12">We Have Between Nine and Twelve
              <OPTION value="lots">Too Many To Count!
            </SELECT>
            </p>
            <h3>Comments:</h3>
            <p><TEXTAREA rows="10" cols="80">Type Comments Here</TEXTAREA></p>
            <h3>Hidden Data!</h3>
            <p><INPUT type="hidden" name="Secret" value="Invisible"></p>
            <h3>Submit this Form</h3>
            <p><INPUT type="submit" value="Send Data Now!"></p>
            <h3>Reset this Form</h3>
            <p><INPUT type="reset" value="Clear all my input now"></p>
        </FORM>
      </BODY>
    </HTML>

2.lesson2.pl

#!/usr/bin/perl

use strict;
use CGI;
my $cgi = new CGI;
print
    $cgi->header() .
    $cgi->start_html( -title => 'Form Results',
                      -author => 'Craig Kelley',
                      -style => '/~ink/perl_cgi/css/perlcgi.css') .
    $cgi->h1('Form Results') . "\n";
    my @params = $cgi->param();
    print '<TABLE border="1" cellspacing="0" cellpadding="0">' . "\n";
    foreach my $parameter (sort @params) {
    print "<tr><th>$parameter</th><td>" . $cgi->param($parameter) . "</td></tr>\n";
    }
    print "</TABLE>\n";
    print $cgi->end_html . "\n";
    exit (0);

你可能感兴趣的:(职场,cgi,环境变量,休闲)