1 / 26
文档名称:

在线考试系统(Perl).doc

格式:doc   页数:26页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

在线考试系统(Perl).doc

上传人:janny 2011/5/17 文件大小:0 KB

下载得到文件列表

在线考试系统(Perl).doc

文档介绍

文档介绍:CGI的基本知识
1 为什么要使用CGI?
随著全球互联网(World Wide Web, 字世界进入了影音声光的新纪元。同时也引进了新的阅读方法,一种有别于传统循序式的阅读方法━HyperText。让人们能够直接从有兴趣的主题切入,并且在其间相互跳跃、链结,以取得所想要的资料。也因此带动了网络人口的激增以及无限的商机,所以在商业应用上这是一个值得开发的空间。
但是这样的方式却缺少了一个应用上重要的特性,那就是━互动性。而CGI的出现正是为了弥补其不足。有了CGI功能的加入,可以使得互动。因此说CGI的发展是。
事实上,CGI的应用相当的广泛,可以借助于其它系统的结合而增强库管理系统(DBMS)结合,便是一种最常见、而且是最具扩充性的方式。因为经由不同的资料库,可以使。
同时,也可利用GGI制作登录(Login)系统,将具有机密性的资料,以密码的方式加以保护。不但省去了系统过于开放的困扰,也可以有效的管理使用者。更进一步,可以记录使用者的使用情形,以便加以计费或者是在网络上进行电子交易。所以,CGI是。
2什么是CGI?
mon Gateway Interface)是人们非常熟悉的CGI,是一个信息服务器主机对外信息服务的标准接口(HTTPd及CERN Servers),见下图。简单地说,就是闸道介面在一般超文本与服务器主机上的应用程序的中间。

媒介传播
用户要求
执行结果
提出要求转提出要求
转返回结果返回结果
客户端共通网关介面CGI 服务器之应用程序
其主要的功能是在些信息给 Server去启动所指定的程序来完成特定的工作。所以更明确的说,CGI仅是在控制信息要求而且产生并传回所需的文件。
使用CGI,你的Server可以读取并显示在客户端无法读取的格式(像SQL Database)。而且可以像网关(Gateway)一样, 在服务器端和客户端之间,产生客户端所需要的讯息。基本上, 在这种主从式(Client/Server)的环境之下,其IPC (Inter munication)的协定是利用信息传递及记忆体分享(环境变量)的方式来完成。CGI有其特定的写法及规格,必须遵守其原则,方可达到主从端信息交流的目的。
3 CGI运作流程
首先在客户端,客户端按下FORM上的SUBMIT按钮或是按下链接(LINK),告知浏览程序(Browser)完成输入后。浏览程序
(Browser)将客户端输入的信息传回动指定的程序并将包装过的参数传入。接着程序依照传入的参数完成指定的工作。如果此时有需要传回的结果,则程序会把结果传回给Server,Server再传至浏览程序(Browser),完成整个运作的流程。下图是CGI运作流程的示意图:
Client Brower
HTML
FROM
URL
CGI
AP
HTTPs
(Windows NT)

如果要让介的角色,将接收到的参数转换成所要结合系统能识别的形式,并处理其传回的信息,再送回至Server让使用者看到。下图是结合其它系统之后CGI运作流程的示意图:
Client Brower Server
(Windows NT)
HTML
FROM
URL
CGI
AP
HTTPs
下面两张图是以MicroSoft SQL Server为例,结合:
Client Brower ver
HTML
FROM
URL
CGI
AP
HTTPs
DBMS
(Windows NT)


Client Brower ver
(Windows NT)
CGI
HTML
FROM
URL
AP
HTTPs
DBMS
(data source)

4 CGI 传递资料的方法
在CGI整个传递资料的过程中,为了要从Server传递有关输入资料给CGI程序,Server将不同的资料转换为各种环境变量以供CGI程序使用。这些环境变量是在Server执行CGI程序时被设定的。在这里只简单说明CGI如何将使用者经FORM所输入的资料做如何处理后,再送到CGI程序中。这是CGI的关键所在,有了这项资料才能正确的收到并处理使用者输入的资料。
在FORM中,每一信息输入栏中必须设定NAME的参数。当信息被送出时,
NAME参数的值会和其相对应的VALUE参数值,被转换为"NAME=VALUE"的形式送出。不同的信息输入栏,中间会以"&"作分隔,亦即会形成"NAME1=VALUE1&NAME2=VALUE2"的形式。如果各参数值中间有空白,会以"+"代替,有特殊字符则以"%XX"代替,其中"XX"为特殊字符的16进制ASCII码。这些特殊字符包括