CGI入门教程

第二页:代码详解

#********* BEGIN BODY********************

open (LOGFILE, ">>guestbook.log");

$newline=join('::',@value);

print LOGFILE ("$newline\n");

close LOGFILE;

print "<BODY BGCOLOR='BEIGE'><H1>Thank you. ";
print "Your comments have been added</H1>";

#******** END BODY************************


代码的第一行是:

open (LOGFILE, ">>guestbook.log");

这行为要写的guestbook.log做准备。open命令用来打开文件进行输入和输出。这里的"LOGFILE"称为文件句柄。后面,当我想对guestbook.log文件进行附加操作时,可以用print LOGFILE。对于程序的其余部分,LOGFILE就表示guestbook.log。后面的文件名以两个大于号开始,这是常用的文件操作方式中的一种,我们常用的操作方式有三种:

  1. < - 打开文件进行输入操作(读文件)。
  2. > - 打开文件进行写操作(覆盖文件)。
  3. >> - 附加操作。

下一行是join语句。这是一个把数据加入无限制的文本文件的非常有用的工具。$newline=join('::',@value); 表示在数组@value中的每个值之间加入两个分号。

$newline现在包含的内容为:

Robert::Young::5 Main St.::Anytown::MA::02177::(617) 555-1212::[email protected]::on::This is Great

现在可以把$newline加入到guestbook.cgi的最后。因为log文件已经有了一个句柄,可以这样操作:

print LOGFILE ("$newline\n");

并且在$newline后面加一个换行符,以后在加新内容时,将以新行开始。

close LOGFILE;

- 关闭文件。

最后,在屏幕上输出一些信息。这不只是礼节。所以可以这样:

print "<BODY BGCOLOR=\'BEIGE\'><H1>Thank you.  Your comments have been added</H1>";

>>

CGI入门教程
第一页 留言板CGI代码
第二页 代码详解
第三页 读取log文件

[第1天][第2天][第3天][第4天][第5天][第6天]