CGI代表Common Gateway Interface,它规定了获取信息的脚本如何从服务器中取得信息或向服务器中写入信
息,可以用任何语言(perl, ksh, c++等)来实现。所有的CGI脚本都应当位于Web服务器的cgi-bin目录。
不同的服务器cgi-bin目录可能会不同,可以通过察看Apache服务器的srm.conf来确定,并且来检查是否具有
执行cgi脚本的权限。
CGI脚本可以向屏幕上输出, 也可以获取用户的输入. 获取用户输入的方法通常是get或post.
当用户点击“提交”按钮时,用户选择的信息将以编码字符串的形式附加在服务器URL的后面。服务器环境变量
QUERY_STRING保存了编码字符串。变量REQUEST_METHOD保存了该表单所使用的方法。
当使用perl的CGI模块时, perl将会把用户提交的信息解析出来, 否则只能自己调用split来分解.
在本例子中,我们使用perl来实现文件的上传.
#diplay_upload.cgi
#Process.cgi
use CGI ':standard'; print start_html({-title=>"FILE upload", -head=>Link({-rel=>'stylesheet', -type=>'text/css', -href=>'main.css'}), }); $req = new CGI; $file = $req->param("FILE1"); open (OUTFILE, ">fileup.txt"); while (my $bytesread = read($file, my $buffer, 1024)) { print OUTFILE $buffer; } close (OUTFILE); end_html;
|
阅读(4037) | 评论(0) | 转发(0) |