第7章 asp编程实例.pdf
《第7章 asp编程实例.pdf》由会员分享,可在线阅读,更多相关《第7章 asp编程实例.pdf(67页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、用 ASP 实现网上“五子棋”大赛 “五子棋”是大家都非常熟悉的一种益智类游戏,相关的游戏软件也非常多,在此我向大家隆重推出一款新的纯“网络版”的五子棋,它利用 ASP 做为开发环境,因此在 Internet 上对战的时候无需下载客户端软件,只要你有一个浏览器就可以了。你也可以在局域网上进行这个游戏。对于 ASP,我不想做过多的说明,在以前的文章中,我已经说过很多。游戏的过程是这样的,我们首先登录,然后可以选择战场,有“金星”、“木星”、“水星”、“火星”、“土星”等五个战场,如果你自认为是一个高手,可以选择金星,否则可以依次选择其它几个星球做为战场。如果这个星球上没有擂主,你就应该以擂主的身
2、份进入,然后别人就可以和你进行对战了。当然,如果所有的星球上都已经开始了战争,那么你就只能等一会儿了。如果你是以擂主身份进入的,你可以等待别人来和你对战,如果你是以攻擂手的身份登录,你可以很快的和擂主展开战斗。开始战斗后,由擂主执黑先行,然后由攻擂手出招,如此这般。当最后决出胜负的时候,会有相应的提示。该站点有几个主要的文件是:Index.asp 登录文件:Index0.asp 中间文件:Match.asp 比赛文件:Back0.jpg white0.jpg black0.jpg 中间用到的图形文件,分别指的棋盘,白子和黑子,如下图:在程序的初始化的时候,将棋盘上分成若干的表格,将背景图片放入
3、其中,形成一个棋盘,然后在放上一个棋子后,再将图片换上相应的白子或黑子就可以了。先看看登录文件:%Language=VBScript%HTML HEAD META NAME=GENERATOR Content=Microsoft Visual Studio 6.0 title星球大战之“五子连珠”大赛!/title /HEAD BODY p align=centerfont size=6星球大战/font/P table border=1 width=80%align=center trtd星球/tdtd擂主/tdtd大战/tdtd攻擂/td/tr tr td金星/td td%if appli
4、cation(first1)=then%form action=index0.asp?flag=First1 method=post INPUT id=text1 name=txtFirst1 size=10INPUT id=submit1 name=submit1 type=submit value=进入 /form%else response.write application(first1)end if%/td td大战/td td%if application(second1)=then%form action=index0.asp?flag=second1 method=post I
5、NPUT id=text1 name=txtSecond1 size=10INPUT id=submit1 name=submit1 type=submit value=进入 /form%else response.write application(Second1)end if%/td /tr tr td木星/td td%if application(first2)=then%form action=index0.asp?flag=First2 method=post INPUT id=text1 name=txtFirst2 size=10INPUT id=submit1 name=sub
6、mit1 type=submit value=进入 /form%else response.write application(first2)end if%/td td大战/td td%if application(second2)=then%form action=index0.asp?flag=second2 method=post INPUT id=text1 name=txtSecond2 size=10INPUT id=submit1 name=submit1 type=submit value=进入 /form%else response.write application(Sec
7、ond2)end if%/td /tr tr td金星/td td%if application(first3)=then%form action=index0.asp?flag=First3 method=post INPUT id=text1 name=txtFirst3 size=10INPUT id=submit1 name=submit1 type=submit value=进入 /form%else response.write application(first3)end if%/td td大战/td td%if application(second3)=then%form ac
8、tion=index0.asp?flag=second3 method=post INPUT id=text1 name=txtSecond3 size=10INPUT id=submit1 name=submit1 type=submit value=进入 /form%else response.write application(Second3)end if%/td /tr tr td金星/td td%if application(first4)=then%form action=index0.asp?flag=First4 method=post INPUT id=text1 name=
9、txtFirst4 size=10INPUT id=submit1 name=submit1 type=submit value=进入 /form%else response.write application(first4)end if%/td td大战/td td%if application(second4)=then%form action=index0.asp?flag=second4 method=post INPUT id=text1 name=txtSecond4 size=10INPUT id=submit1 name=submit1 type=submit value=进入
10、 /form%else response.write application(Second4)end if%/td /tr tr td金星/td td%if application(first5)=then%form action=index0.asp?flag=First5 method=post INPUT id=text1 name=txtFirst5 size=10INPUT id=submit1 name=submit1 type=submit value=进入 /form%else response.write application(first5)end if%/td td大战/
11、td td%if application(second5)=then%form action=index0.asp?flag=second5 method=post INPUT id=text1 name=txtSecond5 size=10INPUT id=submit1 name=submit1 type=submit value=进入 /form%else response.write application(Second5)end if%/td /tr /table /BODY /HTML 这个文件不用做过多的说明,就是一个大的表格,大家可以从那里进入,如果某个位置已经被使用,则它会变
12、成该大 侠的名字,不允许重复登录。在登录后进入 index0.asp,这是一个中间交换文件,在里面进行一些变量的处理及赋值,然后再进入match.asp,进行正式的比赛。我们来看一下 index0.asp 的内容:%Language=VBScript%if Request.Form(txt&request.querystring(flag)then response.write in!&session(nice)=Request.Form(txt&request.querystring(flag)response.write session(nice)&response.write appli
13、cation(request.querystring(flag)if application(request.querystring(flag)=then application(request.querystring(flag)=session(nice)session(class)=right(request.querystring(flag),1)if left(request.querystring(flag),1)=f then application(session(nice)=false elseif left(request.querystring(flag),1)=s the
14、n application(session(nice)=false application(application(first&session(class)=true end if Response.Redirect match.asp end if end if%HTML /HTML 该程序中,用 session(“nice”)来记录您登录的大名,以后的处理中,很多都要用到它,用它来区分很多的用户。如果您是从擂主的位置进入,则您的权利是 first,否则是 second,用 session(class)来记录位于哪个战场场,“金”“木”“水”“火”“土”分别表示为 1、2、3、4、5,因为有
15、多个战场可能同时开战,如果不能正确地区分开,则可能导致一片混乱。application(session(nice)是一个逻辑型变量,用真假来表示您是否可以出棋,如果是假,您要等待一个,如果是真,您就可以下棋了。只有一个战场上的两个人都进入了以后,擂主方可以下棋,而且只有当擂主出子以后,攻擂手才可以下棋。准备好以后,下面就进入赛场,请看文件 match.asp html head meta http-equiv=Content-Type content=text/html;charset=gb2312 meta name=GENERATOR content=Microsoft FrontPage
16、 4.0 meta name=ProgId content=FrontPage.Editor.Document META http-equiv=refresh content=3 title连珠大赛./title /head%Response.Write 擂主:&application(first&session(class)&攻擂:&application(second&session (class)if Request.QueryString(pos)then application(pos&session(class)&Request.QueryString(pos)=true end
17、if%body%Response.Write application(aaa)if application(first&session(class)=session(nice)then color=black if Request.QueryString(pos)then if session(last)=then session(last)=abc if session(last)Request.QueryString(pos)then application(application(first&session(class)=false if application(second&sessi
18、on(class)then application (application(second&session(class)=true session(last)=Request.QueryString(pos)END IF end if else if application(second&session(class)=session(nice)then color=white if Request.QueryString(pos)then if session(last)=then session(last)=abc if session(last)Request.QueryString(po
19、s)then application(application(first&session(class)=true application(application(second&session(class)=false session(last)=Request.QueryString(pos)END IF end if else if application(second&session(class)=then application(second&session(class)=session(nice)color=white if Request.QueryString(pos)then i
20、f session(last)=then session(last)=abc if session(last)Request.QueryString(pos)then application(application(first&session(class)=true application(application(second&session(class)=false session(last)=Request.QueryString(pos)END IF end if else color=end if end if end if Response.Write table width=400
21、 height=400 border=0 cellspacing=0 cellpadding=0 for i=1 to 16 Response.Write tr for j=1 to 16 if application(pos&session(class)&cstr(i)&_&cstr(j)=then application(color&session(class)&_&Request.QueryString (pos)=color Response.Write td width=25 height=25 response.write application(application(first
22、&session(class)if application(session(nice)=true then response.write a href=match.asp?pos=&cstr(i)&_&cstr(j)&img border=0 src=back0.jpg width=25 height=25/a else response.write img border=0 src=back0.jpg width=25 height=25 end if response.write/td else Response.Write td width=25 height=25img border=
23、0 src=&application(color&session(class)&_&cstr(i)&_&cstr (j)&0.jpg width=25 height=25/td&chr(13)end if next Response.Write/tr next Response.Write/table 判断输赢 if application(first&session(class)=session(nice)then m=black h=white else h=black m=white end if 横向判断-for i=1 to 15 win=false loss=false five_
24、me=0 five_he=0 for j=1 to 15 if application(color&session(class)&_&cstr(i)&_&cstr (j)=m then five_me=five_me+1 five_he=0 elseif application(color&session(class)&_&cstr(i)&_&cstr(j)=h then five_me=0 five_he=five_he+1 else five_me=0 five_he=0 end if if five_me=5 then win=true loss=false exit for elsei
25、f five_he=5 then win=false loss=true exit for end if next if win or loss then exit for next if win then response.write 你赢了!application(application(first&session(class)=false application(application(second&session(class)=false end if if loss then response.write 对不起,你输了!application(application(first&s
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第7章 asp编程实例 asp 编程 实例
限制150内