论文无忧网提供:计算机毕业论文范文|计算机毕业设计|计算机毕业论文
栏目导航 ASP Java Web .NET VB6.0 JAVA VC VF DELPHI PB 计算机网络 计算机科学与技术 PHP 安卓APP 其他 C# 代写论文
当前位置: > 计算机 > 计算机科学与技术 >

实验室预约系统的设计(论文+程序)

5       预约系统详细设计5.1               登录页面设计 paper51.com

5.1.1   登录页面 内容来自www.paper51.com

该页面是一个简单的登录界面,如图2。

内容来自www.paper51.com

内容来自论文无忧网 www.paper51.com

图2 登录界面 内容来自论文无忧网 www.paper51.com

当用户来到开始页面,输入用户名和密码,并且要在底下选择相应的登录身份,教师、学生还是管理员,然后点击登录。就开始执行登录检测代码,当代码在数据库搜索到信息时,就返回消息,登录成功,进入相应的界面,如果未搜索到消息,也返回一个信息。该页面通过简单的查询比较语句实现学生、教师、管理员三者的登录功能。在页面的右边有一个注册链接。当用户(教师,学生)进入登录界面时,如果没有账号,要先注册账号。首先选择注册身份,点击“注册”按钮,进入相应的注册界面。实现登录主要代码是通过一个IF语句实现三者身份的判断。部分代码如下: paper51.com

        Dim conn As New SqlConnection copyright paper51.com

        Dimcmd As New SqlCommand copyright paper51.com

        DimobjReader As System.Data.SqlClient.SqlDataReader http://www.paper51.com

       conn.ConnectionString = "Data Source=localhost;InitialCatalog=Booking;Integrated Security=SSPI;Packet Size=4096;UserID=sa;Password=''"

paper51.com

       conn.Open()

内容来自www.paper51.com

       cmd.Connection = conn          copyright paper51.com

………………

内容来自论文无忧网 www.paper51.com

以上代码段是打开数据库代码,在以下的程序中经常用到。 http://www.paper51.com

        Dim name As String = TextBox1.Text

paper51.com

        Dim pwd AsString = TextBox2.Text

paper51.com

        IfRadioButtonList1.Items(0).Selected = True Then http://www.paper51.com

           cmd.CommandText = "Select * from Teacher_information"

paper51.com

           objReader = cmd.ExecuteReader()

copyright paper51.com

           Do While objReader.Read() 内容来自www.paper51.com

               Dim sqlnameAs String = objReader.GetString(1).Trim() 内容来自论文无忧网 www.paper51.com

               Dim sqlpwd As String = objReader.GetString(3).Trim()

paper51.com

               If sqlname = name And sqlpwd = pwd Then http://www.paper51.com

                   Session("names") = TextBox1.Text

copyright paper51.com

                   Session("pwds")= TextBox2.Text

copyright paper51.com

                   Response.Redirect("admintea.aspx")

内容来自论文无忧网 www.paper51.com

                   Exit Do copyright paper51.com

               End If

paper51.com

           Loop 内容来自www.paper51.com

           Response.Redirect("error.aspx")

http://www.paper51.com

………………

内容来自论文无忧网 www.paper51.com

以上这段是查询数据库里的数据进行比较,并且用一个Session控件记录用户名和密码,上面的代码是实现教师登录的代码段。实现学生、教师、管理员三者登录的选择要用到一个IF语句。当判断正确后,转到相关的页面。

paper51.com

5.1.2    注册页面 内容来自论文无忧网 www.paper51.com

教师的注册代码和学生的注册代码及页面都相类似,主要都是实现数据信息的插入到数据库表格里。不同之处在于学生的用户名是学生的学号,这是一个唯一标识,不需要再自己起名字,并且他有一定的长度限制6-12之间,在这个长度区间内的值才是有效的,要是想输入固定长度值,可以修改代码信息来完成。用户名、密码、真实姓名,都是学生和老师必填字段,而学生还有一个必填字段,就是系别班级,它是教师授课预约里的一个字段。由于老师可能有重名的时候,所以老师的用户名是自己起的。在填写老师用户名后,可以检查是否已经被人用过,如果没用过可以继续使用,填写其他信息,如果用户名已存在数据库里就会弹出个提示,要重新输入用户名。当填写好信息后,点击提交就可以注册账号了,如果不小心填错一些信息,可以点击“重填”按钮,重新填写资料。把注册信息数据插入到数据库表格里的代码如下:

内容来自论文无忧网 www.paper51.com

IfS_ID.Text.Length < 5 Or S_ID.Text.Length > 13 Or S_name.Text.Length <1 Or S_pwd.Text.Length < 1 Or S_class.Text.Length < 1 Then

内容来自www.paper51.com

           Label1.Visible = True http://www.paper51.com

        Else

http://www.paper51.com

           cmd.CommandText = "Insert into Student_information values(@S_ID,@S_name,@S_pwd,@S_mail,@S_phone,@S_class,@S_native)" 内容来自www.paper51.com

           cmd.Parameters.Add(New SqlParameter("@S_ID",SqlDbType.Char, 10))

http://www.paper51.com

           cmd.Parameters.Add(New SqlParameter("@S_name",SqlDbType.VarChar, 6))

http://www.paper51.com

           cmd.Parameters.Add(New SqlParameter("@S_pwd",SqlDbType.VarChar, 15)) http://www.paper51.com

           cmd.Parameters.Add(New SqlParameter("@S_mail",SqlDbType.VarChar, 15)) 内容来自论文无忧网 www.paper51.com

           cmd.Parameters.Add(New SqlParameter("@S_phone",SqlDbType.Char, 10))

内容来自论文无忧网 www.paper51.com

           cmd.Parameters.Add(New SqlParameter("@S_class",SqlDbType.Char, 15)) paper51.com

           cmd.Parameters.Add(New SqlParameter("@S_native",SqlDbType.VarChar, 5)) http://www.paper51.com

           cmd.Parameters("@S_ID").Value = Request("S_ID") 内容来自论文无忧网 www.paper51.com

           cmd.Parameters("@S_name").Value = Request("S_name") paper51.com

           cmd.Parameters("@S_pwd").Value = Request("S_pwd")

http://www.paper51.com

           cmd.Parameters("@S_mail").Value = Request("S_mail")

内容来自论文无忧网 www.paper51.com

           cmd.Parameters("@S_phone").Value = Request("S_phone") 内容来自www.paper51.com

           cmd.Parameters("@S_class").Value = Request("S_class") copyright paper51.com

           cmd.Parameters("@S_native").Value = Request("S_native") copyright paper51.com

           cmd.ExecuteNonQuery()

copyright paper51.com

           conn.Close() http://www.paper51.com

           Label2.Text = "你已经注册成功"

内容来自论文无忧网 www.paper51.com

           fh.Visible = True 内容来自论文无忧网 www.paper51.com

        EndIf

copyright paper51.com

注册界面如图3。

内容来自论文无忧网 www.paper51.com

内容来自www.paper51.com

图3  注册界面

内容来自论文无忧网 www.paper51.com

5.2 管理页面设计

内容来自论文无忧网 www.paper51.com

5.2.1   教师管理主页面

paper51.com

该页面如图4。 http://www.paper51.com

http://www.paper51.com

图4  老师主页面

内容来自www.paper51.com

页面最上面一排显示用户的用户类别、用户名。下面是老师能够操作的各种功能,主要是各种查询功能。老师有三种信息查询功能:一是实验室信息查询。该查询主要是查询实验室房间信息,有什么设备、可以做什么样的实验项目、能容纳多少人、可用设备的台数等信息,为老师预约房间提供参考;二是实验项目查询,该查询就是查找某个实验项目能在哪些实验室里做实验,即显示能做某个项目的房间个别信息;三是实验室预约查询,就是当老师查到某个实验室时,想了解该房间已经预约的具体情况的操作,该房间里哪些课节已经预约了,哪些课节空闲。三个功能的实现代码都类似,都是通过SQL 语句来查找数据库里的相关信息,然后把查到的信息通过绑定控件显示到页面上,供查询者了解信息。同时还有几个链接按钮,用来跳转到实验预约,修改资料,信息查询等相关页面。 copyright paper51.com

实验室信息查询的代码如下: copyright paper51.com

cmd.CommandText ="Select * from Lab_information"

内容来自www.paper51.com

       objReader = cmd.ExecuteReader() paper51.com

        DoWhile objReader.Read()

内容来自www.paper51.com

           Dim LabID As String = objReader.GetString(0).Trim() copyright paper51.com

           If LabID = TextBox1.Text Then

paper51.com

               name = LabID

内容来自论文无忧网 www.paper51.com

               Exit Do copyright paper51.com

           End If

内容来自论文无忧网 www.paper51.com

        Loop paper51.com

        IfTextBox1.Text = name Then

paper51.com

           bindlist1()

copyright paper51.com

        Else copyright paper51.com

           Label2.Text = "此实验室尚未添加" 内容来自论文无忧网 www.paper51.com

        EndIf 内容来自www.paper51.com

…………Datalist绑定代码如下: copyright paper51.com

Sub bindlist1() 内容来自论文无忧网 www.paper51.com

        Dimconn As New SqlConnection paper51.com

        Dimcmd As New SqlCommand copyright paper51.com

        Dimds As New DataSet

paper51.com

       conn.ConnectionString = "Data Source=localhost;InitialCatalog=Booking;Integrated Security=SSPI;Packet Size=4096;UserID=sa;Password=''"

内容来自www.paper51.com

       conn.Open() http://www.paper51.com

        cmd.Connection= conn copyright paper51.com

        Dimsqlstr As String = "select * from Lab_information where L_ID='" &Session("L_ID") + "'" copyright paper51.com

       cmd.CommandText = sqlstr

内容来自www.paper51.com

        Dimobjadpt As New SqlDataAdapter(cmd)

copyright paper51.com

        Dimtablename As String = "L_ID"

内容来自论文无忧网 www.paper51.com

       objadpt.Fill(ds, tablename) 内容来自论文无忧网 www.paper51.com

       Lab1.DataSource = ds.Tables(tablename) 内容来自论文无忧网 www.paper51.com

       Lab1.DataBind()

paper51.com

       conn.Close()

paper51.com

End Sub http://www.paper51.com

5.2.2    学生管理主页面

内容来自论文无忧网 www.paper51.com

学生的这个界面主要是查询,是对老师和课程预约情况的查询。不过还有预约功能也在此页面实现,预约功能在后面5.3.1节介绍。学生管理页面如图5。

copyright paper51.com

http://www.paper51.com

图5  学生主页面 http://www.paper51.com

最上面同样是学生的身份、学生的唯一标识。下面是查询功能选项卡,学生的查询主要有两个方面:一个是对实验项目的查询,它主要是查询某个实验项目的信息,主要包括有哪几位老师正在上这门实验课、都在什么实验室、什么时间上课这门课等等。二是老师查询,当知道了上某一门实验课的老师是哪一位时,就可以通过此项查询。由于现在大多数老师都不仅仅教授一门课程,所以有可能有多样的实验课,如老师既教数据库知识,又教操作系统,做实验时就既有操作系统实验课,又有数据库实验课,这时需要一个二级目录的查询,当先输入老师名字时,在后面就会用下拉表单列出老师实验课的信息,然后选择要查的实验课,电击“查询”按钮,才在底下显示具体信息,操作如图6。该操作的代码和老师的查询代码类似,只是在操作中有个下拉菜单的操作。由于要打开数据库,所以涉及数据库打开数据库代码如5.1.1节所叙述,此处不在重复。

paper51.com

内容来自www.paper51.com

图6  学生查询教师实验二级目录的实现

内容来自www.paper51.com

下拉菜单实现的代码如下: copyright paper51.com

Dim objReader AsSystem.Data.SqlClient.SqlDataReader paper51.com

       Session("True_name") = TextBox1.Text

paper51.com

      copyright paper51.com

       cmd.CommandText = "Select * from Tbooking_information" paper51.com

       objReader = cmd.ExecuteReader()

copyright paper51.com

        DoWhile objReader.Read() 内容来自论文无忧网 www.paper51.com

           Dim sqlname As String = objReader.GetString(4).Trim() copyright paper51.com

           Dim sqlexper As String = objReader.GetString(3).Trim() paper51.com

           If sqlname = TextBox1.Text Then copyright paper51.com

               exper.Items.Add("" & sqlexper + "") copyright paper51.com

           End If

http://www.paper51.com

        Loop copyright paper51.com

       TextBox2.Visible = False

内容来自www.paper51.com

           exper.Visible = True    paper51.com

5.2.3    管理员管理主页面

copyright paper51.com

管理员的这个页面主要有三个功能,一是添加房间信息,二是修改房间信息,三是删除学生和老师的预约信息。

paper51.com

(1)添加房间信息。在该页面,要输入实验室房间的详细信息,主要有房间号、实验室类别、总人数(总的计算机台数)、可用设备数(能够做实验的计算机台数)、都能够实现哪些项目的上机操作和备注,这一些必要的字段。此页面有三个按钮:一个是提交、一个是重填、一个是继续添加。提交就是把浏览器里输入的信息插入到数据库表格里,重填就是信息的清除,继续添加也是类似信息的清除。从操作过程知道此操作的代码段主要是信息的插入,所以在此不在列出此段代码。 paper51.com

(2)修改房间信息界面主要是实现对实验室的信息单项修改。要先填写房间号,系统根据这个填写的信息继续做后面的操作,可以修改实验室类别、总人数、可用设备数(上机人数)、实验项目、备注等各项。页面如图7。 copyright paper51.com

内容来自论文无忧网 www.paper51.com

图7  房间修改信息界面

内容来自论文无忧网 www.paper51.com

(3)删除预约信息。页面如图8。 内容来自论文无忧网 www.paper51.com

http://www.paper51.com

图8  管理员删除界面

http://www.paper51.com

此操作是按分类操作的,分四类:一个删除房间信息,它又分删除一个房间信息和删除多个房间信息,当填写房间号或房间号的区间时,就可以执行此操作。二是删除房间的预约信息,可以删除一个房间或多个房间的预约信息。三是删除老师的预约信息,当输入老师姓名时就删除老师的预约信息。四是删除学生的预约信息,删除学生预约信息通常是一个班或一个专业的,所以主要是使用区间,删除一段学号的学生预约信息。当点击删除时,如果成功就会在后面显示删除成功。否则,就提示输入错误字段。在页面下面是简单的介绍如何操作删除功能的。

内容来自www.paper51.com

此页面有个‘继续操作’按钮,当点击它时,就会清空上面的填入信息,同时还有个链接按钮,用来返回到管理员的主界面。删除功能很简单,就是先打开数据库,用一条delete语句,删除相应的数据库表格里的某一列字段或整个字段,就可以完成此操作。代码如下: 内容来自www.paper51.com

Dim conn As NewSqlConnection

内容来自论文无忧网 www.paper51.com

        Dimcmd As New SqlCommand

内容来自www.paper51.com

        Dimds As New DataSet

paper51.com

       conn.ConnectionString = "Data Source=localhost;InitialCatalog=Booking;Integrated Security=SSPI;Packet Size=4096;UserID=sa;Password=''" paper51.com

       conn.Open() http://www.paper51.com

       cmd.Connection = conn 内容来自www.paper51.com

       cmd.CommandText = "delete from Lab_information where L_ID >='" & TextBox8.Text +"'and L_ID<='" & Textbox9.Text + "'" paper51.com

       Label3.Text = "删除成功"

内容来自www.paper51.com

       cmd.ExecuteNonQuery() copyright paper51.com

       conn.Close() http://www.paper51.com

5.3               预约页面的实现

内容来自论文无忧网 www.paper51.com

5.3.1   学生预约页面

内容来自www.paper51.com

这个在学生的管理主页面上,如图5学生主页面。主要是向数据库里学生预约表格里填加一些学生预约信息。在输入框里输入学生要预约的房间号,授课教师的真实姓名,学生的学号,实验项目,执行此操作的时间,点提交就可以实现学生的预约。下面有三个按钮,一个是重填,一个是预约,一个是取消预约,当点取消预约时,系统会根据当前用户输入的信息(用户名或学号等)执行预约信息删除操作。 copyright paper51.com

5.3.2    教师预约页面

http://www.paper51.com

教师预约的页面是一个单独的页面,在此页面上方同样是用户类别和用户标识,下面输入框是要预约所填写的必要信息字段,有预约实验室的房间号、上课的星期、课节、实验项目名称、教师真实姓名、完成实验项目的上课周次、预约信息的时间、教师授课的班级。星期和课节字段是两个下拉框的表格,通过下拉框选择是星期几,第几节课。代码也是插入数据的代码,在此不在重复代码段。页面如图9。

copyright paper51.com

copyright paper51.com

图9  教师预约界面 内容来自www.paper51.com

5.4               其它页面的实现

内容来自www.paper51.com

5.4.1         个人资料管理页面

内容来自www.paper51.com

此功能是学生、教师、管理员三者都需要实现的。所以他们实现的方式相同,管理资料的页面也相同。如管理员的个人资料管理页面如图10。 内容来自www.paper51.com

copyright paper51.com

图10  管理员资料管理界面

内容来自论文无忧网 www.paper51.com

密码框里要填入旧的密码,新密码和对新密码的确认,才能修改信息。邮箱和电话是当用户登录后就显示出来的,你可以根据自己信息对它们进行相关的修改,点修改按钮,进行此操作,无论成功与否都有提示,实现代码如下:

http://www.paper51.com

If pwd1.Text =Session("pwds") Then

内容来自www.paper51.com

           If pwd2.Text = pwd3.Text Then http://www.paper51.com

               cmd.CommandText = "UPDATE Teacher_information SET T_pwd='"& pwd2.Text + "' where T_name='" & Session("names")+ "'" copyright paper51.com

               Label1.Text = "修改成功" http://www.paper51.com

            Else

内容来自www.paper51.com

               Label1.Text = "密码不一致" copyright paper51.com

           End If

内容来自www.paper51.com

        Else paper51.com

           Label1.Text = "旧密码不正确" copyright paper51.com

        EndIf copyright paper51.com

5.4.2   退出系统功能的实现

内容来自论文无忧网 www.paper51.com

此操作就是删除在登录记录的Session值,学生、教师、管理员的退出系统功能都是如此实现。把Session的值设置为空,返回到开始界面即可。代码简单明了,如管理员的代码如下: copyright paper51.com

Session("namea")= "" 内容来自论文无忧网 www.paper51.com

       Session("pwda") = "" http://www.paper51.com

       Response.Redirect("homepage.aspx")

内容来自论文无忧网 www.paper51.com

------分隔线----------------------------
联系方式