Chinaunix首页 | 论坛 | 博客
  • 博客访问: 134376
  • 博文数量: 51
  • 博客积分: 2500
  • 博客等级: 少校
  • 技术积分: 540
  • 用 户 组: 普通用户
  • 注册时间: 2007-07-21 12:33
文章分类

全部博文(51)

文章存档

2011年(1)

2010年(5)

2009年(1)

2008年(12)

2007年(32)

我的朋友

分类:

2007-09-28 21:41:02

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
   

use CGI ':standard';
  
  #specify the CSS file

  print start_html({-title=>"File Upload", -head=>Link({-rel=>'stylesheet', -type=>'text/css', -href=>'core.css'}), });
  print '

';

  print '

Locate the log file:

'
;
  print '', br;
  print br;
  print br, '';
  print '';
  print '';

  end_html;

#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) |
给主人留下些什么吧!~~