📄 cgiclass10-1.htm
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<title>Cgi教程第十章</title>
</head>
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<p align="left"><font face="宋体"><small>最后的例子:<br>
<br>
最后,我准备以一个例子来结束这个教程。<br>
<br>
环境:<br>
这是一个非常简单的WEB应用程序。如果你要运行这个程序,也许你得化些时间来配置自己的系统。在这个例子里,CGI程序由Perl5来编写,后台数据库使用sybase
system 10,Sybperl用于建立脚本和数据库之间的通信,用其他的CGI后台数据库接口程序也可以。</small></font></p>
<p align="left"><font face="楷体_GB2312"><strong>CGI程序:</strong></font></p>
<p align="left"><small><font face="8514fix"><head><br>
<title>会议登记程序</title><br>
</head><br>
<body><br>
<h2>会议登记系统</h2><br>
please fill out the following form. A registration packet will be sent to you immediatel
you.Note that all <b>bolad-faced</b>fields muse be complected.<br>
<hr><br>
<form method="post" action="cgi-bin/resgister.pl"><br>
<b>first name:</b><input type="text" name="c_fname"
size=30><br>
<p><br>
<b>Last name:</b><input type="text" name="c_lname"
size=30><br>
<p><br>
<b>address 1:</b><input type="text" name="c_add1"
size=30><br>
<p><br>
<b>address 2:</b><input type="text" name="c_add2"
size=30><br>
<p><br>
<b>city:</b><input type="text" name="c_city"
size=30><br>
<p><br>
<b>State:</b><input type="text" name="c_state"
size=2><br>
<p><br>
<b>Zip:</b><input type="text" name="c_zip" size=15><br>
<p><br>
<b>phone:</b><input type="text" name="c_phone"
size=15><br>
<p><br>
<b>Fax:</b><input type="text" name="c_fax" size=15><br>
<p><br>
<b>Email:</b><input type="text" name="c_email"
size=15><br>
<p><br>
Packge:<br>
<ul><br>
<li><input type="radio" name="c_packge"
valuge="a">Package A<br>
<li><input type="radio" name="c_packge"
valuge="b">Package B<br>
<li><input type="radio" name="c_packge"
valuge="c">Package C<br>
</ul><br>
How did you hear about the conference:<br>
<ul><br>
<li><input type="radio" name="c_ad"
value="a">Direct Mail<br>
<li><input type="radio" name="c_ad"
value="b">Associate<br>
<li><input type="radio" name="c_ad"
value="c">Journal<br>
<li><input type="radio" name="c_ad"
value="d">Other<br>
</ul><br>
<p><br>
<input type="reset" value="clear"><input
type="submit" value="Register"><p><br>
</form></font></small></p>
<p align="left"><small><font face="8514fix"><hr><br>
</body><br>
<br>
</font></small><strong><font face="楷体_GB2312">Perl脚本</font><small><font
face="8514fix">:</strong><br>
#!/usr/local/bin/perl<br>
require"cgi-lib.pl";<br>
&ReadParse(* input);<br>
$mc_fname=$input{'c_fname'};<br>
$mc_lname=$input{'c_lname'};<br>
$mc_add1=$input{'c_add1'};<br>
$mc_add2=$input{'c_add2'};<br>
$mc_city=$input{'c_city'};<br>
$mc_state=$input{'c_state'};<br>
$mc_zip=$input{'c_zip'};<br>
$mc_phone=$input{'c_phone'};<br>
$mc_fax=$input{'c_fax'};<br>
$mc_email=$input{'c_email'};<br>
$mc_package=$input{'c_package'};<br>
$mc_ad=$input{'c_ad'};<br>
<br>
print &PrintHeader;</font></small></p>
<p align="left"><small><font face="8514fix">if (($mc_fname eq"")||(mc_lname eq
"")||(mc_add1 eq "")||($mc_add2 eq "")||(<br>
mc_city eq "")||(mc_state eq "")||(mc_zip eq "")){<br>
printf ("<br>");<br>
printf(",strong>Your registration cannot be processed as is.Pleae make sure all
the requied fields are filled properly.</strong>");<br>
print"<p>";<br>
print"Pleae use the <i>Back</i>button to complete the form.\n";<br>
}<br>
else{# data is OK<br>
<br>
use Sybase::DBlib;</font></small></p>
<p align="left"><small><font face="8514fix">$dbh=Sybase::DBlib->dblogin('conf_user','123','DB-SERVER','REG');<br>
$dbh->dbuse('conference');</font></small></p>
<p align="left"><small><font face="8514fix">$sqlcmd="insert into
reg(c_fname,c_lanme,c_add1,c_add2,c_city,c_state,c_zip,
c_phone,c_fax,c_email,c_package,c_ad)";</font></small></p>
<p align="left"><small><font face="8514fix">$sqlcmd=$sqlcmd."values("<br>
$sqlcmd=$sqlcmd.'\"".$mc_fname."\",";<br>
$sqlcmd=$sqlcmd.'\"".$mc_flame."\",";<br>
$sqlcmd=$sqlcmd.'\"".$mc_add1."\",";<br>
$sqlcmd=$sqlcmd.'\"".$mc_add2."\",";<br>
$sqlcmd=$sqlcmd.'\"".$mc_city."\",";<br>
$sqlcmd=$sqlcmd.'\"".$mc_state."\",";<br>
$sqlcmd=$sqlcmd.'\"".$mc_zip."\",";<br>
$sqlcmd=$sqlcmd.'\"".$mc_phone."\",";<br>
$sqlcmd=$sqlcmd.'\"".$mc_fax."\",";<br>
$sqlcmd=$sqlcmd.'\"".$mc_email."\",";<br>
$sqlcmd=$sqlcmd.'\"".$mc_package."\",";<br>
$sqlcmd=$sqlcmd.'\"".$mc_ad."\",";<br>
$sqlcmd=$sqlcmd.'\"".$mc_fax."\",";<br>
$dbh->dbcmd($sqlcmd."\n");<br>
$dbh->dbsqlexec;<br>
<br>
print"<strong>Thank you.</strong>Your registration has been submitted.You
should receive you packet shourtly in the mail.";</font></small></p>
<p align="left"><small><font face="8514fix">}</font></small></p>
<p align="left"><small><font face="8514fix"> </font></small></td>
</tr>
</table>
回<a
href="default.html" tppabs="http://202.96.217.5/~xiaoyi/default.html">CGI教程目录</a></p>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -