返回列表 回复 发帖

关于cgi的站点

给大家一个好的cgi程序
HTML语法:
<HTML>
<title>留言薄</title>
<h1>留言薄</h1>
<form methdo="post" actiont="/cgi-bin/guest.cgi">
<p>您的姓名:<input name="name" size="20">
<p>您的E-MAIL:<input name="email" size="30">
<p>您的留言<textarea name="suggest" cols=30 rows=4>
</textarea><p>
<input type="submit" value="执行">
<input type="reset" value="取消">
CGI程序:
#!/usr/bin/perl
#文件名:guest.cgi
#声明:欢迎任意修改
$|=1;
print"Content-type:text\html\n\"; #设定输出格式为HTML
read(STDIN,$BUFFER,$ENV{'CONTENT_LENGTH'};
#读入标准输入字符串
#分割解码
@pairs=split(/&/,$buffer);
foreach $pair(@pairs){
($name,$value)=split(/=/,$pair);
$value=~tr/+/ /;
$value=~s/%(..)/pack(pack("C",hex($1))/eg;
$FORM{$name}=$value;
}
print"<title>留言薄</title>";
print"<h1>留言薄</h1>";
foreach $check(value%FORM){
if ($check eq " "){
print"有空白字段,请重新输入!";
exit; #退出
}
$FORM{'suggest'}=~s/\n/<br>/g; #将字符串中的换行符转换成<br>
$date='/usr/bin/date'; #取得系统时间
chop($date); #去掉还行符
$filename="/public/data.htm"; #输出文件
open(FILE,">>$filename")||die"Can't Open $filename";
#追加方式打开
print FILE "我来自ENV{'REMOTE_HOST'}<BR>";
print FILE "留言时间date<br>";
print FILE "姓名FORM{'name'}<br>";
print FILE "我的EMAIL:<a href=mailto:$FORM{'email'}>$FORM{'email'}</a><br>\n";
close(FILE);
print "谢谢您的留言!";
print "观看<a href=/data.htm>留言薄</a>; #一定要有"/"!!!!
#还可以写成print "观看<a href=\"/data.htm\">留言薄</a>;

关于cgi的站点

                                 EMAIL
EMAIL也是最常用的CGI应用程序之一,其目的是给来宾的留言一个应答.
HTML语法:
<HTML>
<title>留言</title>
<h1>留言薄</h1>
<form methdo="post" actiont="/cgi-bin/guest.cgi">
<p>您的姓名:<input name="name" size="20">
<p>您的E-MAIL:<input name="email" size="30">
<p>您的留言<textarea name="suggest" cols=30 rows=4></textarea><p>
<input type="submit" value="执行">
<input type="reset" value="取消">
CGI程序:
#!/usr/bin/perl
#文件名:guest.cgi
#声明:欢迎任意修改
$|=1;
print"Content-type:text\html\n\"; #设定输出格式为HTML
read(STDIN,$BUFFER,$ENV{'CONTENT_LENGTH'}; #读入标准输入字符串
#分割解码
@pairs=split(/&/,$buffer);
foreach $pair(@pairs){
($name,$value)=split(/=/,$pair);
$value=~tr/+/ /;
$value=~s/%(..)/pack(pack("C",hex($1))/eg;
$FORM{$name}=$value;
}
print"<title>留言</title>";
print"<h1>留言薄</h1>";
foreach $check(value%FORM){
if ($check eq " "){
print"有空白字段,请重新输入!";
exit; #退出
}
$FORM{'suggest'}=~s/\n/<br>/g; #将字符串中的换行符转换成<br>
$date='/usr/bin/date'; #取得系统时间
chop($date); #去掉还行符
$mail="/usr/bin/mail"; #mail 的路径
$yourmail="webmaster\@com2008.51.net"; #收信人地址 ,一定要有"\"
open(MAIL,"|$mail $yourmail")||die"Can't Open $filename";
#追加方式打开
print MAIL "您来自ENV{'REMOTE_HOST'}<BR>";
print MAIL "留言时间date<br>";
print MAIL "姓名FORM{'name'}<br>";
print MAIL "您的EMAIL:<a href=mailto:$FORM{'email'}>$FORM{'email'}</a><br>\n";
print MAIL "您的留言已经收到,我会尽快处理.谢谢!";
close(MAIL);

关于cgi的站点

搜索引擎的利用
HTML语法:
<HTML>
<H1>搜索引擎的利用</H1>
<FORM METHOD="OST" ACTION="/cgi-bin/goto.cgi">
<select name="goto" size=8>
<option value="http://www.zg169.net/~worldboy">CGI乐园
<option value="http://www.yahoo.com">YAHOO
<option value="http://www.sohoo.com.cn">SOHOO
</select>
<input type="submit" value="Goto!">
</FORM></HTML>
CGI程序:
#!/usr/bin/perl
#文件名:goto.cgi
#声明:欢迎任意修改 使用
read(STDIN,$buffer,$ENV{'CONTENT_LENGTH'};
#分割解码
@pairs=split(/&/,$buffer);
foreach $pair(@pairs){
($name,$value)=split(/=/,$pair);
$value=~tr/+/ /;
$value=~s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg;
$FORM{$name}=$value;
}
print"LocationFORM{'goto'}\n\n";
#一定要有两个\n!!!

关于cgi的站点

http://www.fanqiang.com/a4/b3/http://unit.cug.edu.cn/wlzx/wlfw/perl-cgi/perltech/index.htm

关于cgi的站点

http://unit.cug.edu.cn/wlzx/wlfw/
返回列表