门禁管理系统_第1页
门禁管理系统_第2页
门禁管理系统_第3页
门禁管理系统_第4页
门禁管理系统_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、上海电力学院信息网络技术设计课程设计报告题目: 门禁管理系统的设计 姓 名: 学 号: 院系: 电子与信息工程学院 专业年级: 电子信息工程 2010级 2014 年 1 月 14 日一、 设计目的本课程设计的目的是体验基于身份认证的信息网络实践演示平台和综合应用VB.NET或C#软件以及SQL数据库建立公交收费管理系统、门禁管理系统、图书借阅系统、食堂管理系统等应用软件。二设计平台 硬件:IC读卡器、IC卡与PC机 软件:VS2008,SQL Server2005三、 设计内容、要求及组织形式本课程设计的门禁管理系统的设计分为两部分:VB.NET或C#编写的应用软件以及SQL数据库。软件可以

2、完成计算机串口与IC卡硬件设备的通信功能、门禁管理数据库的操作功能以及根据读入的IC卡数据显示相应的数据列表的功能。四、设计内容 设计课题:门禁管理系统的设计 设计要求:当要进门时,持卡人走到读卡区读卡,读卡器接收到IC卡读卡信息后,将卡号信息传送到上位机供分析,根据用户信息以及对用户设定的门禁权限判断该卡是否合法,同时将该信息与日期、时间记录下来供查询。本系统由用户信息、门禁权限信息、正常刷卡记录、非法刷卡记录等应用模块组成。 五、页面设计和编程(1)准备1(图1) 添加label,timer,,ProcessBar控件,引导进入登录界面 图1.准备1代码:Public Class 准备1

3、Private Sub 准备1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load '初始化准备页面窗体中的各个控件 Timer2.Interval = 1000 ProgressBar1.Maximum = 10 ProgressBar1.Visible = True Timer2.Enabled = True Timer1.Interval = 5000 Timer1.Enabled = True End Sub Private Sub Timer1_Tick(By

4、Val sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Timer1.Enabled = False Dim frm2 As New 登录2 Me.Hide() frm2.Show() End Sub Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick Dim i As Integer i = ProgressBar1.Value If i

5、< ProgressBar1.Maximum Then i = i + 2 ProgressBar1.Value = i End If End SubEnd Class(2)登录2(图2 ) 添加label,textbox,button,growbox控件,以及SqlCommand1 ,SqlDataAdapter管理员生成的DataSet1管理员1(连接SQL中的管理员表)和SqlConnection1。图2 登录2代码:Private Sub Button确定_Click(ByVal sender As System.Object, ByVal e As System.EventAr

6、gs) Handles Button确定.Click If TextBox管理员.Text.Length <> 0 Or TextBox密码.Text.Length <> 0 Then SqlConnection1.Open() SqlCommand1.Connection = SqlConnection1 DataSet管理员1.Clear() SqlDataAdapter管理员.SelectCommand.CommandText = "select*from 管理员 where 管理员='" & TextBox管理员.Text &

7、amp; "'and 密码='" & TextBox密码.Text & "'" SqlDataAdapter管理员.Fill(DataSet管理员1) If DataSet管理员1.管理员.Rows.Count = 1 Then Me.Hide() frm4.Show() Else MsgBox("管理员或密码错误", MsgBoxStyle.Critical) End If DataSet管理员1.Clear() SqlConnection1.Close() Else MessageBox.S

8、how("管理员和密码不能为空") End If End Sub(3)选择4代码: Private Sub Button确定_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button确定.Click If TextBox机器编号.Text.Length <> 0 And ComboBox串口编号.Text.Length <> 0 Then Select Case ComboBox串口编号.Text Case "COM2" AxM

9、SComm1.CommPort = 2 Case "COM1" AxMSComm1.CommPort = 1 Case "COM3" AxMSComm1.CommPort = 3 Case "COM4" AxMSComm1.CommPort = 4 Case "COM5" AxMSComm1.CommPort = 5 End Select AxMSComm1.Settings = "19200,N,8,1" AxMSComm1.InBufferSize = 1024 AxMSComm1.OutB

10、ufferSize = 1024 AxMSComm1.InputMode = MSCommLib.InputModeCInputModeBinary AxMSComm1.InputLen = 0 AxMSComm1.RThreshold = 1 AxMSComm1.PortOpen = True Timer2.Enabled = True Label1.Text = "请刷卡" Else MessageBox.Show("您未设置机器编号或串口号码!") End IfEnd SubPrivate Sub TextBox1_TextChanged(ByVa

11、l sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged If TextBox1.Text.Length = 0 Then Exit Sub End If If SqlConnection2.State = ConnectionState.Closed Then SqlConnection2.Open() End If 'SqlConnection2.Open() '打开数据库连接 DataSet用户1.Clear() SqlCommand1.Connection =

12、 SqlConnection2 'SqlCommand1控件连接数据库 SqlDataAdapter用户.SelectCommand.CommandText = "select * from 用户 where 卡号='" & TextBox1.Text & "'" SqlDataAdapter用户.Fill(DataSet用户1) If DataSet用户1.用户.Rows.Count = 1 Then '若在刷卡信息表中未搜索到数据,则搜索学生信息表, 并将搜索到的用户基本信息插入到刷卡信息表中 Mess

13、ageBox.Show("门已打开!") 'DataSet进出资料1.Clear() DataGrid1.Update() SqlDataAdapter进出资料.SelectCommand.CommandText = "select * from 用户 where 卡号='" & TextBox1.Text & "'" SqlDataAdapter进出资料.Fill(DataSet进出资料1) DataGrid1.Update() SqlConnection2.Close() '关闭数据

14、库连接 TextBox1.Text = "" '清空TextBox1 Else MessageBox.Show("非法用户!") End If End Sub(4)查询结果5(图4)添加label,textbox,button,datagrid,mainmenu控件,以及SqlCommand1 ,SqlDataAdapter用户生成的DataSet1用户资料1(连接SQL中的用户表)和SqlConnection1。 图4.查询结果5代码:Private Sub Button查询_Click(ByVal sender As System.Objec

15、t, ByVal e As System.EventArgs) Handles Button查询.Click SqlConnection1.Open() SqlDataAdapter用户.SelectCommand.CommandText = "select * from 用户 where 卡号 = '" & TextBox卡号.Text & "'or 姓名 = '" & TextBox姓名.Text & "' or 性别 = '" & TextBox性别

16、.Text & "'or 部门 = '" & TextBox部门.Text & "'" SqlConnection1.Close() DataSet用户资料1.Clear() SqlDataAdapter用户.Fill(DataSet用户资料1) DataGrid1.Update() DataGrid1.Refresh() TextBoxID.Text = "" TextBox姓名.Text = "" TextBox性别.Text = "" Tex

17、tBox卡号.Text = "" TextBox联系方式.Text = "" TextBox部门.Text = "" End Sub Private Sub Button添加_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button添加.Click SqlConnection1.Open() SqlCommand1.Connection = SqlConnection1 SqlCommand1.CommandText = "

18、;insert into 用户(ID,卡号,姓名,性别,部门,联系方式) values('" & TextBoxID.Text & "', '" & TextBox卡号.Text & "','" & TextBox姓名.Text & "','" & TextBox性别.Text & "','" & TextBox部门.Text & "',

19、'" & TextBox联系方式.Text & "')" SqlCommand1.ExecuteNonQuery() SqlConnection1.Close() DataSet用户资料1.Clear() SqlDataAdapter用户.Fill(DataSet用户资料1) DataGrid1.Update() TextBoxID.Text = "" TextBox姓名.Text = "" TextBox性别.Text = "" TextBox部门.Text = &quo

20、t;" TextBox联系方式.Text = ""End SubPrivate Sub Button删除_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button删除.Click SqlConnection1.Open() SqlCommand1.Connection = SqlConnection1 SqlCommand1.CommandText = "delete from 用户 where ID = '" & TextBoxID.Text & "'" ' & "'or 卡号='" & TextBox卡号.Text & "'or 姓名='" & TextB

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论