1、WAP网站开发实训代码及资料目 录第一章 实训目的 1第二章 所涉及到的技术 1第三章 服务器端(IIS)配置 1第四章 实训内容 24.1总体架构 24.2 数据库表的设计 34.2.1数据库配置 34.2.2数据库中的表设计 44.3用户登录模块设计 54.3.1系统功能介绍 54.3.2具体处理流程: 64.3.3代码实现 64.3.4运行效果图 84.4用户注册模块设计 84.4.1系统功能介绍 84.4.2具体处理流程: 94.4.3运行效果图 94.5成绩查询模块设计 104.5.1系统功能介绍 104.5.2具体处理流程: 104.5.3代码实现 114.5.4运行效果图 124
2、.6投票系统功能模块设计 134.6.1系统功能介绍 134.6.2具体处理流程: 144.6.3代码实现 144.6.4运行效果图 16第五章 实训小结 18第六章 参考文献 19第一章 实训目的1 掌握如何配置Web服务器,使其支持WAP应用服务2 掌握WAP网站搭建的步骤3 熟练掌握WML&WMLScript编程的基本知识4 掌握WML的动态网页编程(ASP)5 掌握WAP网站和数据库相操作的基本知识第二章 所涉及到的技术1 Nokia Wap Toolkit模拟器2 IIS服务器3 ASP动态网页编程4 SQL Server 2005数据库5 Opera 10浏览器第三章 服务器端(I
3、IS)配置1. 开始设置控制面板管理工具Internet信息服务2. 打开Internet信息服务3. 选择默认网站右键新建虚拟目录4. 根据向导提示一步步往下做,在其过程中给出你新建虚拟目录的别名(我起名为:aspweb);并且给出输入内容所在的目录路径(假设我们设置为C:aspcode)5. 选择你刚才新建立的虚拟目录aspweb,右键属性HTTP头页签单击“文件类型(F)”按钮6. 单击“新类型”按钮,弹出文件类型对话框7. 在关联扩展名里填入“wml”,在内容类型(MIME)里填入“text/vnd.wap.wml”,点击确认按钮8. 重新点击单击“新类型”按钮,弹出文件类型对话框9.
4、 在关联扩展名里填入“wmlc”,在内容类型(MIME)里填入“application/vnd.wap.wmlc”,点击确认按钮10. 重新点击单击“新类型”按钮,弹出文件类型对话框11. 在关联扩展名里填入“wmls”,在内容类型(MIME)里填入“text/vnd.wap.wmlscript”,点击确认按钮12. 重新点击单击“新类型”按钮,弹出文件类型对话框13. 在关联扩展名里填入“wmlsc”,在内容类型(MIME)里填“application/vnd.wap.wmlscriptc”,点击确认按钮14. 重新点击单击“新类型”按钮,弹出文件类型对话框15. 在关联扩展名里填入“wbm
5、p”,在内容类型(MIME)里填入“image/vnd.wap.wbmp”,点击确认按钮16. 此时服务器端配置成功第四章 实训内容4.1总体架构综合WML&WMLScript、ASP和SQL Server实现一个简单的学生信息系统。其中包括用户登录模块、用户注册模块、查询学生成绩的功能模块、给班级干部投选票的模块。学生先进行登录,存在登录成功和失败两种情况。如果登录失败,则不允许进行其他操作;只有登陆成功,才允许查询成绩,并且登录成功的同学,可以给自己想选择的班委投上一票,以便于新班委名单的产生。总体架构如图4-1所示。图4-1总体架构4.2 数据库表的设计4.2.1数据库配置1. 开始程序
6、Microsoft SQL Server 2005 SQL Server Management Studio2. 连接到服务器3. 展开数据库服务器展开安全性展开登录名4. 右键单击sa,选择属性进入5. 选择常规,删除原先的密码,输入新的密码1234566. 选择状态,登录由原来的“禁用”状态改为“启用”状态,设置完以后点击确定7. 选择数据库服务器,点击右键,选择“属性”进入8. 点击左侧“安全性”,在右边的“服务器身份验证”中选择“SQL Server和Windows身份验证模式”,点击确定,弹出提示“需要重新启动服务器,刚才的设置才有效”的提示9. 选择数据库服务器,点击右键,选择“重
7、新启动”进入,在弹出的提示中,选择“Y”,然后开始重新启动数据库的过程10. 断开当前数据库连接11. 重新连接数据库,选择“SQL Server身份验证”,并输入用户名和密码,如果登录成功,则表示刚才的配置成功12. 选择“数据库” 右键新建数据库13. 为新建数据库起一个名字(我的数据库名为mydb)14. 此时数据库端配置成功4.2.2数据库中的表设计在数据库中总共包含4个表,下面分别介绍student表如表4-1所示表4-1 student表字段类型默认值描述sidintnot null学生学号snamenchar(10)null学生姓名spasswordnchar(10)null用户
8、密码flagintnull登陆次数及判断投票条件student_course表如表4-2所示表4-2 student_course表字段类型默认值描述sidintnot null学生学号cidintnot null学生课程号scorefloatnull学生成绩course表如表4-3所示表4-3 course表字段类型默认值描述cidintnot null学生课程号cnamenchar(10)null课程名present表如表4-4所示表4-4 present表字段类型默认值描述snamenchar(10)null候选同学名numintnull选票数 4.3用户登录模块设计4.3.1系统功能介
9、绍1 用户输入学生姓名和密码2 提交用户输入的学生姓名和密码到服务器端3 查询数据库中的学生信息表,并查看有无此学生信息4 如果有此学生信息,则提示用户登陆成功;如果无此用户信息,则提示用户登陆失败,并返回到登录界面,让学生进行重新输入。4.3.2具体处理流程: 如图4-3所示:图4-3登录流程图4.3.3代码实现登录的ASP代码:loginasp.asp % aname = Request(username) passd = Request(password) if aname= then Response.Write 用户名为空! Response.Write 登录失败 Response.
10、Write Response.Write Response.Write Response.Write Response.end end if Dim conn,records,sqlQuery Set conn=Server.CreateObject(ADODB.Connection) conn.Open DRIVER=SQL Server;database=mydb;Server=(local);uid=sa;pwd=123456; sqlQuery=SELECT * FROM student WHERE sname=&aname&AND spassword=&passd& Set reco
11、rds= Server.CreateObject(ADODB.Recordset) Set records=conn.Execute(sqlQuery) if records.EOF then Response.Write登录失败!密码错误! Response.Write Response.Write Response.Write else flag1 =records(flag).value flag1 = flag1+1 sqlServer= update student set flag = &flag1& where sname=&aname& Set rs= Server.Creat
12、eObject(ADODB.Recordset) rs=conn.Execute(sqlServer) Response.Write&records(sname)&登录成功! Response.Write请任意选择一项: Response.Write成绩查询 Response.Write Response.Write Response.Write班委投票 Response.Write Response.Write end if records.close Set records=nothing %4.3.4运行效果图 其运行效果图如图4-3所示,其中登录界面如图4-3中的(a)图所示,登录成功
13、如图4-3中的(b)图所示, 登录失败如图4-3中的(c)图所示。 (a) (b) (c)图4-3 个人信息管理模块运行效果图4.4用户注册模块设计4.4.1系统功能介绍1 用户输入要注册的用户名和密码2 提交用户输入的用户名和密码到服务器端3 查询数据库中的用户信息表,并查看有无此用户信息4 如果有此用户信息,则提示用户已存在;如果无此用户信息,则进行插入功能,并返回到首页,让用户进入登录界面。4.4.2具体处理流程: 如图4-4所示:图4-4注册流程图4.4.3运行效果图 其运行效果图如图4-4所示,其中注册界面如图4-4中的(a)图所示,注册成功如图4-4中的(b)图所示, 注册失败如图
14、4-4中的(c)图所示。 (a) (b) (c)图4-4 用户注册模块运行效果图4.5成绩查询模块设计4.5.1系统功能介绍1 用户登录成功后,可以查询任意一个同学的成绩;2 用户进入查询界面,输入想要查询学生的学号后,直接点击查询按钮就能够显示指定学号学生的各科成绩;4.5.2具体处理流程: 如图4-5所示:图4-5成绩查询流程图4.5.3代码实现成绩查询的ASP代码:queryscore.asp% id=request(stud_id)利用Server对象的CreateObject方法建立Connect对象。Set conn = Server.CreateObject(ADODB.Conn
15、ection)打开连接数据库strProvider = Driver=SQL Server;Server=(local);Database=mydb;UID=sa;PWD=123456;conn.Open strProvider建立查询命令,选择student_course表的指定学号的所有记录项。sqlQuery = select a.sname as 姓名, ame as 课程名, c.score as 成绩 from student a inner join student_course c on a.sid=c.sid inner join course b on c.cid=b.ci
16、d where a.sid=&id执行查询。rs是RecordSet对象。Set rs= Server.CreateObject(ADODB.Recordset)Set rs=conn.Execute(sqlQuery)Response.Write 学号为&id&的学生成绩如下所示:建立一个表,把查询得到的结果保存到表中。Response.Write 表头Response.Write For i=0 To rs.fields.count-1 Response.Write &rs(i).name&NextResponse.Write 把查询结果,填入表中。While not rs.EOF Res
17、ponse.Write For i=0 To rs.fields.count-1 Response.Write &rs(i).value& Next Response.Write rs.MoveNext WendResponse.Write Set conn = nothing%4.5.4运行效果图其运行效果图如图4-5所示,其中成绩查询界面如图4-5中的(a)图所示,输出成绩结果页面如图4-5中的(b)图所示,。 (a) (b)图4-5成绩查询模块运行效果图4.6投票系统功能模块设计4.6.1系统功能介绍1 用户进行投票2 用户进入投票页面3 提交用户输入的用户名到服务器端4 查询数据库中的
18、记录表,并查看有无此用户信息5 如果有此用户信息,则提示已经投过票了如果没有就就进行投票6 查看候选人的得票数。4.6.2具体处理流程: 如图4-6所示:图4-6班委投票流程图4.6.3代码实现投票系统的ASP代码:vote.asp 1 then Response.Write您已经投过票了,不能再投了! else sqlServer=SELECT * FROM present WHERE sname=&stud_name& Set rs= Server.CreateObject(ADODB.Recordset) rs=conn.Execute(sqlServer) snum = rs(num)
19、.value snum = snum+1 sqlServer= update present set num = &snum& where sname=&stud_name& Set rs= Server.CreateObject(ADODB.Recordset) rs=conn.Execute(sqlServer) Response.Write您已经成功投票给&stud_name& Response.Write stud_name&目前的票数是&snum& Set conn = Server.CreateObject(ADODB.Connection) strProvider = Drive
20、r=SQL Server;Server=(local);Database=mydb;UID=sa;PWD=123456; conn.Open strProvider Command = select * from present Set rs = conn.Execute(command,recordsAffected,adcmd) Response.Write目前的投票情况为: Response.Write Response.Write & For i=0 To rs.fields.count-1 Response.Write & Next Response.Write While not
21、rs.EOF Response.Write & For i=0 To rs.fields.count-1 Response.Write &rs(i).value& Next Response.Write &票& rs.MoveNext Wend Response.Write end if Set conn = nothing Response.Write Response.Write Response.Write %4.6.4运行效果图其运行效果图如图4-6所示,其中投票界面如图4-6中的(a)图所示,投票结果如图4-6中的(b)图所示,投票失败界面如图4-6中的(c)图所示。 (a) (b)
22、 (c)图4-8 投票功能模块运行效果图第五章 实训小结虽然这次实训只有一个星期的时间,但是我还是学到了很多,至少增强了我动手编程的能力。当然,从这次实训中也发现了自己还有很多足。例如,上课讲的内容还没吃透,所学知识不能灵活运用,把老师布置的任务完成了就了事了,不想再扩展功能等等。因为我们对asp动态网页编程语言的基本语法结构,各个对象的方法、集合、属性还是不是很了解,尽管老师上课基本上已经讲过,但我们有VB语言的基础及我们下课之后很少复习上课的知识,再加上我们大部分自学的积极性还不高,所以,存在的问题主要还是asp方面。如果不是老师提供了登录asp的代码,加上以前老师上课讲课用的asp例子,
23、我想我们的情况更严重。在这次实训中,我也遇到了不少问题,当然最后都解决了。如asp程序中双引号匹配问题;不同的的链接为什么链接到同一个卡片;投票的票数为什么没有自动增加等等。我想在这次实训中,我最得意的就是成绩查询部分用的关联查询和在Student表里增加了一个flag字段(flag有两个用途,一是记录用户登录的次数,二是限制投票时判断的条件)。当然,这些很简单或者别的同学也做出来了,但至少我思考了。我知道在软件技术这个的行业,虽然前景很好,待遇很高,但竞争力很大,没有扎实的基础,大量的编程经验以及很强的自学能力,是很难再这个领域立足的。说到底,就是兴趣。我想只要对某一行感兴趣的话,再大的困难也会克服的,最怕的是对这行不感兴趣。当然,不是每个人一开始对某一行感兴趣的,而是在这行中因为做成功某事有了成就感以及得到周围人的“认可”,就逐渐对这行感兴趣了。我们学习也一样,所以,要把每一件小事做好,比如每一次的实训,我想,不管以后你干哪一行,你都会得心应手。第六章 参考文献参考文献1 刘新娥.WAP&WML网站开发.南京信息职业技术学院,2010.1.
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1