电影票网上订票系统 盐城工学院
《电影票网上订票系统 盐城工学院》由会员分享,可在线阅读,更多相关《电影票网上订票系统 盐城工学院(35页珍藏版)》请在装配图网上搜索。
1、 NIIT-4 Project Training实训报告专业计算机科学与技术学生姓名班级学号指导教师刘 颖完成日期目录一、设计题目1二、项目概述3三、项目系统总体需求3四、课题设计的基本思想,原理和算法描述3五、源程序及注释,运行示例及结果分析 14六、总结和展望 80七、参考资料 一设计题目:Sound & Stage Entertainment影院订票管理二、项目概述Sound & Stage Entertainment 成立于 1995 年。它一开始是一家项目管理公司,后来涉及地产并在全美建造了 15 座世界级的影剧院。这些电影院都是综合性多厅影院,可同时放映 2 到 4 部电影。公司从
2、这些电影院获得了巨大的收益。三项目系统总体需求Sound & Stage Entertainment 管理 15 家影剧院。每个电影院都具有一个订票中心,人们可以从这些订票中心购买当前和即将放映的场次的门票。此外,人们可以通过电话询问特定放映的可用空位。在上一次董事会上,Sound & Stage Entertainment 的 CEO Roger Hanks 指出了现有系统存在以下问题:人们需要排很长的队来购买门票。人们需要访问电影院以订购即将放映的场次的门票。 仅在电影院的工作时间内才允许提前订购门票。 人们发现,当他们希望通过电话询问特定放映的可用空位时,电话在大多数时间都处于占线状态。
3、因此,他们必须亲自来到电影院以查看特定放映的可用空位。人们需要来到电影院或阅读报纸以了解新发布的演出信息。Roger Hanks 经过观察发现来到电影院的人数正迅速增长。电影院具有很大的座位容量,但是放映的场次正在使影院越来越拥挤。同时,许多人花了很长时间排队,但是仍然无法获得当前放映的门票。四课题设计的基本思想,原理和算法描述1.目的(1) 进一步巩固所学的基础知识;(2) 锻炼自己的理论与实践相融合的运用能力;(3) 熟练掌握具体软件开发平台下(Visual Studio 2010)的动手能力,掌握应用程序设计的方法与技巧;2基本思想及原理 该网站将供以下两种不同类型的用户使用: 客户和管
4、理员。该网站将对每种类型的用户提供不同的界面。客户的网站界面将使其能够:n 查看当前在所有剧院上映的电影的详细信息n 查看将在一星期内在不同的剧院上映的电影的详细信。n 向网站注册以成为会员n 在成功登录后在线订购电影票n 更改密码当客户尝试订购特定电影票时,系统将查看该场次的可用座位。如果客户要求的电影票数量超出了可用的座位数,则用户将会被重定向到显示相应消息的另一个页面。此外,该页面将显示该电影的具有可用位置的所有播出的详细信息。然而,如果具有足够的可用座位数,则将为客户生成一个编号。客户只需在播出开始前在中心获取门票时报出该编号。管理员网站界面将使其能够:n 输入正在各个剧院上映的电影的
5、详细信息。n 输入将在这些剧院上映的新电影的详细信息。n 更新横幅以显示促销方案。n 查看客户反馈。n 更改他或她的密码。开发环境:Visual Studio 2010数据库:ACCESS3功能分析(1)前台系统功能主要分为两大部分:影片相关功能、及会员服务相关功能。另一项重要而不在menu中直接呈现(但会在网页中适当位置出现)的是【订票】功能。a.影片相关功能:首页是提供近期热映影片以及即将上映影片的概况,可通过页面跳转进行对影片的详细查询。还有场次以及订票功能。同时提供场次表,可直接查询目前上映影片中的所有场次,方便观众不需要到现场查询每部影片的场次。另外提供进阶查询,可使观众了解每部影片
6、的导演、主演、类型、剧情等资讯。b.会员服务相关功能有会员登入、会员注册。会员登入以后可查询每部影片的场次,并在网上直接进行订票操作。该功能极大满足了观众自由选择座位的权利。网站首页(Index)影片查询影片概况场次表进阶查询会员服务会员登录会员注册图3-1 前台系统功能前台系统构架的设计是为了方便观众无需登录其他网站查询自己感兴趣的影片了解导演、主演、剧情等相关内容,也无需到影城现场咨询每部上映影片的场次表。通过该网上订票系统,观众可在家中轻松的进行所有操作,包括在线订票的功能。而且,观众在订票过程中出现某场次的座位已经订满或是没有自己想要的座位时,系统会出现“订票失败,可选择其它场次观看本
7、部影片”的提示。以此来通知观众,降低了现场订票的失败率,同时也节约了观众到影城排队买票的时间。这个设计还有益于影城售票人员,他们通过观众网上订票的操作可以快捷地掌握每场次的座位安排以及观众的信息,再根据影片各场次是否满座,在网上直接提示订票的观众。(2)配置数据库本系统数据库管理系统选择Microsoft SQL Server 2000,数据库连接使用ADO技术。数据库连接代码如下:4. 数据分析与建模(1)数据库E-R图:ShowStart timeEnd TimeTicketsBookedDateShow IDRunsHallHasTheaterTheater IDNameLocation
8、No. of HallsHall IDHall CapacityShowsMovieMovie IDMovie NameCategoryCastDirectorDurationIs ForBookingNo. of TicketsAmount PayableMakesCustomerPhone No.AddressNameCustomer ID (2)流程图:登陆界面管理员售票员影片管理售票管理会员管理关于增加影片影片信息修改影片订票信息订票查询钱箱查询会员信息会员注册增加影片影片信息修改影片售票会员管理会员信息会员注册5.数据库建立:(1) 总体设计(2) 各单位以表的形式如下:数据流:数据
9、流名称构成电影信息表Film座位类别Seat折扣表Agio订票表Ticket登录类型表Types钱箱表Money电影类型Sort会员类型MemberTypes大厅Hall会员信息Member放映时间表 TimeFilm:列名含义类型长度取值范围FID影片编号Int 40-32767FFilmName电影名称Nvarchar(20)20FDirector导演Nvarchar(10)10 FPlay演员Nvarchar(50)50FIntro电影简介Nvarchar(1000)1000FLanguage语言Nvarchar(10)10FLong片长(分钟)IntFDate放映日期Nvarchar(
10、50)500-31FMoney价格Int0-100FNumber票数Int0-300FNum座位编号Nvarchar(50)500-300FPhoto海报Nvarchar(50)50FPew硬座数量Nvarchar(10)10150FComPew软座数量Nvarchar(10)10100FLove情侣座数量Nvarchar(10)1050FSortID电影类别Int20-99FTimeID放映日期IntSeat:列名含义类型长度取值范围SEID主键Int1-10SType座位的类型Nvarchar(10)101-10SMoney座位票价Int20-99SNumber座位编号Nvarchar(1
11、0)31-100Agio:列名含义类型长度取值范围AID折扣类型编号IntAType折扣类型Nvarchar(10)10ARebate折扣IntTicket:列名含义类型长度取值范围TId主键IntTFName电影名称Nvarchar(20)20TPhone电话Nvarchar(13)130-9TCard身份证等证件Nvarchar(50)50TDate放映日期Nvarchar(50)50TTime放映时间Nvarchar(50)50THall放映大厅Nvarchar(10)10TNumber座位号Int TTicketPrice票的单价IntTPayMoney打折后的价格IntTCount订
12、购票的数量IntTMoney票数总价IntTAgio折扣类型Nvarchar(20)Type:列名含义类型长度取值范围TID用户序号Int21-10TLgoinType用户类型Nvarchar(10)101-10TLgionId用户名Nvarchar(10)1050TLgionPwd用户密码Nvarchar(10)100-9Money:列名含义类型长度取值范围MSum售票总额Int50-31767FID影片编号Int40-32767Filmsort:列名含义类型长度取值范围SOID类型编号Int20-99SSort电影类型NvarcharMember:列名含义类型长度取值范围MID会员编号In
13、tMType会员类型NvacharMDiscount折扣NvacharMName用户姓名NvacharMID card会员身份证号Nvacharr(18)180-9MPhone会员的联系电话Nvachar(13)130-9Time:列名含义类型长度取值范围TID标识列;IntTTime放映时间NvacharHID放映大厅编号IntHall:列名含义类型长度取值范围HID放映大厅编号IntHHall放映大厅Nvachar10)五源程序及注释(部分代码),运行示例及结果分析(截图分析)1、源程序(1)、用户登录using System;using System.Data;using System.
14、Data.OleDb;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;namespace TicketBookingSystem public partial class Login : System.We
15、b.UI.Page protected void Page_Load(object sender, EventArgs e) protected void reset_btn_Click(object sender, EventArgs e) this.username_txt.Text = ; this.password_txt.Text = ; protected void submit_btn_Click(object sender, EventArgs e) string strCon = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=; s
16、trCon += MapPath(ticketBooking.mdb); OleDbConnection con = new OleDbConnection(strCon); OleDbCommand cmd = new OleDbCommand(select * from user where username= + this.username_txt.Text + and password= + this.password_txt.Text + , con); con.Open(); OleDbDataReader dr = cmd.ExecuteReader(); if (dr.Read
17、() this.Label1.Visible = false; HttpCookie cookie = new HttpCookie(TicketBooking); DateTime dtNow = DateTime.Now; TimeSpan tsMinute = new TimeSpan(1, 0, 0); /one hour cookies cookie.Expires = dtNow.Add(tsMinute); cookie.Values.Add(username, this.username_txt.Text.ToString(); cookie.Values.Add(family
18、name, drfamilyname.ToString(); cookie.Values.Add(givenname, drgivenname.ToString(); Sessionusername = this.username_txt.Text; Response.AppendCookie(cookie); Response.Redirect(Index.aspx); else this.Label1.Visible = true; con.Close(); (2)主界面using System;using System.Data;using System.Data.OleDb;using
19、 System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;namespace TicketBookingSystem public partial class _Default : System.Web.UI.Page pro
20、tected void Page_Load(object sender, EventArgs e) int i = 0; string strCon = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=; strCon += MapPath(ticketBooking.mdb); OleDbConnection con = new OleDbConnection(strCon); string strSQL = select movieid, moviename, pictureURL from movies; con.Open(); OleDbCom
21、mand cmd = new OleDbCommand(strSQL, con); OleDbDataReader dr = cmd.ExecuteReader(); while (dr.Read() if (i = 0) this.Image_1.ImageUrl = drpictureURL.ToString(); this.lab_moviename_1.Text = drmoviename.ToString(); this.Label_id_1.Text = drmovieid.ToString(); this.Image_1.Visible = true; this.lab_movi
22、ename_1.Visible = true; this.btn_detail_1.Visible = true; this.btn_addCart_1.Visible = true; else if (i = 1) this.Image_2.ImageUrl = drpictureURL.ToString(); this.lab_moviename_2.Text = drmoviename.ToString(); this.Label_id_2.Text = drmovieid.ToString(); this.Image_2.Visible = true; this.lab_moviena
23、me_2.Visible = true; this.btn_detail_2.Visible = true; this.btn_addCart_2.Visible = true; else if (i = 2) this.Image_3.ImageUrl = drpictureURL.ToString(); this.Label_id_3.Text = drmovieid.ToString(); this.lab_moviename_3.Text = drmoviename.ToString(); this.Image_3.Visible = true; this.lab_moviename_
24、3.Visible = true; this.btn_detail_3.Visible = true; this.btn_addCart_3.Visible = true; else if (i = 3) this.Image_4.ImageUrl = drpictureURL.ToString(); this.lab_moviename_4.Text = drmoviename.ToString(); this.Label_id_4.Text = drmovieid.ToString(); this.Image_4.Visible = true; this.lab_moviename_4.V
25、isible = true; this.btn_detail_4.Visible = true; this.btn_addCart_4.Visible = true; else if (i = 4) this.Image_5.ImageUrl = drpictureURL.ToString(); this.lab_moviename_5.Text = drmoviename.ToString(); this.Label_id_5.Text = drmovieid.ToString(); this.Image_5.Visible = true; this.lab_moviename_5.Visi
26、ble = true; this.btn_detail_5.Visible = true; this.btn_addCart_5.Visible = true; else if (i = 5) this.Image_6.ImageUrl = drpictureURL.ToString(); this.lab_moviename_6.Text = drmoviename.ToString(); this.Image_6.Visible = true; this.Label_id_6.Text = drmovieid.ToString(); this.lab_moviename_6.Visible
27、 = true; this.btn_detail_6.Visible = true; this.btn_addCart_6.Visible = true; else if (i = 6) this.Image_7.ImageUrl = drpictureURL.ToString(); this.lab_moviename_7.Text = drmoviename.ToString(); this.Label_id_7.Text = drmovieid.ToString(); this.Image_7.Visible = true; this.lab_moviename_7.Visible =
28、true; this.btn_detail_7.Visible = true; this.btn_addCart_7.Visible = true; else if (i = 7) this.Image_8.ImageUrl = drpictureURL.ToString(); this.lab_moviename_8.Text = drmoviename.ToString(); this.Label_id_8.Text = drmovieid.ToString(); this.Image_8.Visible = true; this.lab_moviename_8.Visible = tru
29、e; this.btn_detail_8.Visible = true; this.btn_addCart_8.Visible = true; else if (i = 8) this.Image_9.ImageUrl = drpictureURL.ToString(); this.lab_moviename_9.Text = drmoviename.ToString(); this.Label_id_9.Text = drmovieid.ToString(); this.Image_9.Visible = true; this.lab_moviename_9.Visible = true;
30、this.btn_detail_9.Visible = true; this.btn_addCart_9.Visible = true; else if (i = 9) this.Image_10.ImageUrl = drpictureURL.ToString(); this.lab_moviename_10.Text = drmoviename.ToString(); this.Label_id_10.Text = drmovieid.ToString(); this.Image_10.Visible = true; this.lab_moviename_10.Visible = true
31、; this.btn_detail_10.Visible = true; this.btn_addCart_10.Visible = true; else if (i = 10) this.Image_11.ImageUrl = drpictureURL.ToString(); this.lab_moviename_11.Text = drmoviename.ToString(); this.Label_id_11.Text = drmovieid.ToString(); this.Image_11.Visible = true; this.lab_moviename_11.Visible =
32、 true; this.btn_detail_11.Visible = true; this.btn_addCart_11.Visible = true; else this.Image_12.ImageUrl = drpictureURL.ToString(); this.lab_moviename_12.Text = drmoviename.ToString(); this.Label_id_12.Text = drmovieid.ToString(); this.Image_12.Visible = true; this.lab_moviename_12.Visible = true;
33、this.btn_detail_12.Visible = true; this.btn_addCart_12.Visible = true; i+; con.Close(); this.Label1.Text = Welcome ; string temp; if (Request.CookiesTicketBooking != null) Sessionusername = Convert.ToString(Request.CookiesTicketBooking.Valuesusername); temp = Convert.ToString(Request.CookiesTicketBo
34、oking.Valuesgivenname); temp += ; temp += Convert.ToString(Request.CookiesTicketBooking.Valuesfamilyname); if (temp != | temp != ) this.Label2.Text = temp.ToString(); this.Label2.Visible = true; this.account_details_btn.Visible = true; this.prepay_btn.Visible = true; this.Button_CheckCart.Visible =
35、true; this.login_btn.Text = Log out; else this.account_details_btn.Visible = false; this.prepay_btn.Visible = false; this.Button_CheckCart.Visible = false; Sessionusername = Anonymous; protected void Button1_Click(object sender, EventArgs e) if (this.login_btn.Text = Login) Response.Redirect(Login.a
36、spx); else HttpCookie cookie = new HttpCookie(TicketBooking); cookie.Expires = DateTime.Now.AddDays(-1); Response.AppendCookie(cookie); Sessionusername = Anonymous; Response.Redirect(Index.aspx); protected void register_btn_Click(object sender, EventArgs e) Response.Redirect(Register.aspx); protecte
37、d void btn_detail_1_Click(object sender, EventArgs e) Sessionmovieid = this.Label_id_1.Text; Response.Redirect(MovieDetails.aspx); protected void Button1_Click1(object sender, EventArgs e) Sessionmovieid = this.Label_id_2.Text; Response.Redirect(MovieDetails.aspx); protected void btn_detail_3_Click(
38、object sender, EventArgs e) Sessionmovieid = this.Label_id_3.Text; Response.Redirect(MovieDetails.aspx); protected void btn_detail_5_Click(object sender, EventArgs e) Sessionmovieid = this.Label_id_5.Text; Response.Redirect(MovieDetails.aspx); protected void btn_detail_4_Click(object sender, EventAr
39、gs e) Sessionmovieid = this.Label_id_4.Text; Response.Redirect(MovieDetails.aspx); protected void btn_detail_6_Click(object sender, EventArgs e) Sessionmovieid = this.Label_id_6.Text; Response.Redirect(MovieDetails.aspx); protected void btn_detail_7_Click(object sender, EventArgs e) Sessionmovieid =
40、 this.Label_id_7.Text; Response.Redirect(MovieDetails.aspx); protected void btn_detail_8_Click(object sender, EventArgs e) Sessionmovieid = this.Label_id_8.Text; Response.Redirect(MovieDetails.aspx); protected void btn_addCart_1_Click(object sender, EventArgs e) Sessionmovieid = this.Label_id_1.Text
41、; Response.Redirect(ReserveTickets.aspx); protected void btn_addCart_2_Click(object sender, EventArgs e) Sessionmovieid = this.Label_id_2.Text; Response.Redirect(ReserveTickets.aspx); protected void btn_addCart_3_Click(object sender, EventArgs e) Sessionmovieid = this.Label_id_3.Text; Response.Redir
42、ect(ReserveTickets.aspx); protected void btn_addCart_4_Click(object sender, EventArgs e) Sessionmovieid = this.Label_id_4.Text; Response.Redirect(ReserveTickets.aspx); protected void btn_addCart_5_Click(object sender, EventArgs e) Sessionmovieid = this.Label_id_5.Text; Response.Redirect(ReserveTicke
43、ts.aspx); protected void btn_addCart_6_Click(object sender, EventArgs e) Sessionmovieid = this.Label_id_6.Text; Response.Redirect(ReserveTickets.aspx); protected void btn_addCart_7_Click(object sender, EventArgs e) Sessionmovieid = this.Label_id_7.Text; Response.Redirect(ReserveTickets.aspx); protected void btn_addCart_8_Click(object sender, EventArgs e) Sessionmovieid = this.Label_id_8.Text; Response.Redirect(ReserveTickets.aspx);
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 沪教牛津英语六年级上册Module3单元全套ppt课件
- 沪科版《声音的产生与传播》ppt课件
- 店铺数据分析课件
- 美国研究文献资源指南.课件
- 绿色夏天清新汇报课件
- 美食咖啡下午茶餐饮课件
- 微生物学实验-1-口腔微生物的染色观察与显微镜油镜的使用;细菌的革兰氏染色教学课件
- 沪教版(上海)七年级数学第二学期ppt课件152(2)直角坐标平面内点的运动
- 店铺报告模本教学课件
- 民兵组织建设课件
- 沪教版(上海)七年级数学第二学期ppt课件152(1)直角坐标平面内点的运动
- 沪教版牛津英语小学二年级上学期期末复习句型课件
- 沪教版地理七年级上册42黄河课件
- 沪教版五年级数学下册《正方体、长方体的表面积2》ppt课件
- 微生物学基础知识培训课件