这篇文章主要介绍“VB如何制作Windows CGI应用程序”,在日常操作中,相信很多人在VB如何制作Windows CGI应用程序问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”VB如何制作Windows CGI应用程序”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
下面举一个较复杂实用的WindowsCGI程序,它由4个子过程组成:CGI_Main(),EnterGuest(),ReturnForm()和Inter_Main();它的功能是:服务器向申请连接的Web客户发出一张表单,Web客户在表单里填入有关数据后送回服务器,服务器收到Web客户的数据并将它们写入一个文件中存储起来,同时向Web客户发送一个收条。这个WindowsCGI应用程序的工作流程如下:一当Web客户要求CGI连接,服务器运行该CGI程序,首先执行CGI_Main()过程,CGI_Main()过程调用ReturnForm()向Web客户送出一个表单,如果Web客户填了意见表,并按键寄回服务器(此时过程CGI_Main()中CGI_RequestMethod="POST"成立)则由CGI_Main()过程调用EnterGuest()获取客户发来的数据并将其放入文件guestbk.csv中,同时向Web客户返回一个信息回条表示客户表单已收到。
由于编译使用这个CGI程序的做法与上面完全相同,故下面仅给源程序代码:
OptionExplicit ConstBOOK_FILE="guestbk.csv"'存放客户 数据的文件,自动生成,可用Excel97调阅 DeclareSubSleepLib"kernel32" (ByValdwMillisecondsAsLong) SubCGI_Main() IfCGI_RequestMethod="POST"Then EnterGuest Beep Else ReturnForm EndIf EndSub'
一当Web客户要求CGI连接,服务器执行ReturnForm(),送出征求建议的表单:
SubReturnForm() Send"Content-type:text/html" Send"" Send("<HTML><HEAD><TITLE>贵州大学 TITLE>HEAD>") Send("<BODY><H2>欢迎您访问贵州 大学计算机软件与理论研究所WWW站点H1>") Send("我们的e-mail是<AHREFAHREF=""mailto:" &CGI_ServerAdmin&_ """>lixiang@gzu.edu.cn:A>") Send("<HR>") Send("请填下表,留下您的宝贵建议:") Send("<FORMACTIONFORMACTION=""" &CGI_ExecutablePath&"""METHOD=""POST"">") Send("<PRE>您的姓名: <INPUTSIZEINPUTSIZE=25NAME=""name"">") Send("E-mail地址: <INPUTSIZEINPUTSIZE=25NAME=""email"">") Send("您给我们的建议:<TEXTAREACOLSTEXTAREACOLS=40 ROWS=4WRAP=VIRTUALNAME=""comments"">") Send("TEXTAREA>PRE>") Send("请击此处将您的建议送我们: <INPUTTYPEINPUTTYPE=""submit""") Send("VALUE=""发送您的建议"">") Send("<HR>") Send("FORM>BODY>HTML>") EndSub '获取客户建议表单数据,将所填数据存入文件guestbk.csv并向客户返回一个信息 SubEnterGuest() DimiLockTriesAsInteger DimsDateAsString DimsNameAsString DimsEmailAsString DimsCommentsAsString 'DimsBrowserAsString DimsFirstNameAsString DimfnAsInteger '提取建议的有关数据: sName=GetSmallField("name") sEmail=GetSmallField("email") sComments=GetSmallField("comments") iLockTries=0 fn=FreeFile OnErrorGoTogLockFail gRetryLock: OpenApp.Path+"\"+BOOK_FILEFor AppendLockReadWriteAs#fn OnErrorGoTo0 sDate=Now Write#fn,sDate,sName,sEmail, sComments,CGI_RemoteAddr Close#fn sFirstName=Trim$(Left$(sName, InStr(sName,""))) IfsFirstName<>"" ThensFirstName=sFirstName&"," Send("Content-type:text/html") Send("") Send("<HTML><HEAD><TITLE>谢谢您! TITLE>HEAD>") Send("您的签名与建议是:<PRE>") Send("日期:"&sDate) Send("姓名:"&sName) Send("E-Mail:"&sEmail) Send("Hostaddress: ["&CGI_RemoteAddr&"]") Send("建议:PRE>") Send(sComments) Send("<H2>谢谢您!H2>") Send("BODY>HTML>") ExitSub gLockFail: Sleep(1000) iLockTriesiLockTries=iLockTries+1 ResumegRetryLock EndSub SubInter_Main() MsgBox"这是CGI程序, 需要在Web服务器中运行。",16,"CGI.BAS" EndSub
到此,关于“VB如何制作Windows CGI应用程序”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。