【VB】学生信息管理系统问题总结
在学生信息管理系统的调试中,我遇到的问题如下。
一、SQL注入。
进入管理系统时,相信大家都会遇到SQL注入问题。
在用户名前面加上一个 ' ,就会提示错误,这个错误就是SQL注入。我是这样解决的。
参考ASCII码表
Private Sub txtUserName_KeyPress(KeyAscii As Integer)Select Case KeyAsciiCase 48 To 57 '只能输入数字Case 65 To 90 '只能输入大写字母Case 97 To 122 '只能输入小写字母Case 8 '只能输入退格Case Else '否则KeyAscii = 0 '输入无效End Select
End Sub
这样,我就限制了用户名只能输入数字,大小写字母和删除键,其他输入均被视为无效输入。
同样,在限制用户输入类型时,比如班号只允许输入数字,同样可以用这个办法。
二、密码修改优化。
在修改密码界面,我们发现只要是进了系统,任何人都可以随意修改密码,非常不安全,于是,我进行了如下修改。添加了密码验证。
If Trim(txtPassword1.Text)<>Trim(txtPassword2.Text) Then
<span style="white-space:pre"> </span>修改密码
Else
<span style="white-space:pre"> </span>msgbox"原密码错误,请重新输入!,"vbOkOnly+vbexclamation,"警告"
End If
然后在Form Load中显示登录的用户名。
Private Sub Form_Load()Dim txtSQL, MsgText As String'定义变量Dim mrc As ADODB.Recordset Dim name As StringtxtPassword0.Text = ""txtPassword1.Text = ""txtPassword2.Text = ""txtSQL = "select * from user_Info where user_ID = '" & UserName & "'" '连接数据库Set mrc = ExecuteSQL(txtSQL, MsgText) '调用自定义函数name = Trim(mrc.Fields(0)) 'name赋值Label4.Caption = "当前用户名为:" & name '显示复制内容
End Sub
Dim borndate As Date
Dim getdate As Date'定义变量
borndate =Trim(txtBorndate.Text)
getdate =Trim(txtRudate.Text)
If getdate<=borndate then'进行比较MsgBox"入学时间不能早于出生时间,请重新输入",vbOKOnly + vbInformation,"警告"txtRudate.SetFocusExit Sub
End If
Dim a As Integer
a = DateDiff("d", txtRudate.Text, txtBorndate.Text)
If a > 0 Then
MsgBox "出生日期应早于入校日期!!请修改……", vbOKOnly, "警告"Exit SubtxtRudate.Text = ""txtRudate.SetFocus
Else
但是,在加入了这样的代码后,会衍生出另外一个问题,错误13,类型不匹配。
Public Sub AutocolWidth(Form As Form, Grid As MSHFlexGrid)
'同一窗体和控件文字大小
Dim FontSize As Integer
FontSize = Form.FontSize
Form.FontSize = Grid.Font.SizeDim RowNum As Long, ColNum As Long, ColWidth As Double
With Grid '遍历每一列For ColNum = 0 To .Cols - 1ColWidth = 0'遍历每一行,找到最长文本For RowNum = 0 To .Rows - 1If Form.TextWidth(.TextMatrix(RowNum, ColNum)) > ColWidth ThenColWidth = Form.TextWidth(.TextMatrix(RowNum, ColNum))End IfNext'在最长文本长度的基础上增加长度90缇.ColWidth(ColNum) = ColWidth + 150Next
End With
Form.FontSize = FontSize
End Sub
AutocolWidth Me, myFlexgrid '使表格适应文字长度
Private Sub cmdAdd_Click()If listallcourse.ListIndex <> -1 ThenCall addlist(listselectcourse, listallcourse.list(listallcourse.ListIndex))End If
End Sub
Private Function addlist(list As ListBox, str As String) As Boolean '只允许单次添加Dim i As LongFor i = 0 To list.ListCount - 1If list.list(i) = str ThenExit FunctionEnd IfNextlist.AddItem straddlist = True
End Function
If DateDiff("d",CDdate(txtBorndate.Text),"1753-01-01">0 ThenMsgBox "出生日期请输入1753年以后的年份!",vbOKOnly + vbExclamation,"警告"txtBorndate.SetFocus
exit Sub
【VB】学生信息管理系统问题总结相关推荐
- 【VB】学生信息管理系统5——数据库代码
这次学生信息管理系统在代码的理解过程中遇到了一些问题.总结如下: 1. sql server的安装过程各个步骤的意思.在安装SQL Server的时候按照网上的步骤,我觉得这个需要学完整个数据库再返回 ...
- 【VB】学生信息管理系统4——数据库的发展
由于连接数据的时候出现了很多不懂得问题,为什么要连接,它是怎么连接的,查着查着,就越看越多.又不舍得就这么放过这些问题,所以就耐心看看究竟是怎么回事! 1.自从出现数据库,人们渴望用数据和应用程序做交 ...
- 【VB】学生信息管理系统2——窗体设计
这次学生系统是照着书敲的,先敲完然后开始调试!中途遇到了很多问题,查了很多,这里不容易系统的总结!所以就针对各个问题,各个击破! 问题一:VB 6.0中,状态栏控件(sbstatusbar):右击选项 ...
- 【VB】学生信息管理系统1——系统设计怎样开始?
历时两周完成用VB完成的学生信息管理系统.从刚开始只会敲好玩的小程序到现在完整的做出一个像样的系统.自己的编程思维进行了很大的跨越. 这次的学生信息管理系统让我从整体的角度看到了一个系统设计的过程. ...
- vb与数据库(二)之迟到的学生信息管理系统总结
学生信息管理系统是在7月27号结的项目,结项目时自己就计划写一篇总结于是当时就开了个头,然后将其存入草稿箱,计划是将其完善再发表,结果一拖就拖到现在(拖拉不是病,拖起来要了命!!!). ...
- 学生信息管理系统(VB 干货篇三)
引言 最近一直在学生信息管理系统徘徊不前,不敢进入机房.分析其主要原因是之前的知识学的有点Low,不敢前进,怕进到机房也是停着,所以一直徘徊在这里.因此最近总结了很多VB中的基础知识.比如:常用的函数 ...
- vb吐槽班02 不要以为学生信息管理系统很难啊魂淡!
诶,好的好的,今天依旧是我给大家带来大型情感类电脑连续节目vb吐槽班,我们依旧是吐的飞起,感觉好恶心... 自从上次在csdn发过博客之后,一直生活在水深火热的预习专业课的生活中,毕竟 ...
- 【VB】学生信息管理系统3——连接数据库的前提
在窗体设计和编写程序代码后,需要进行数据库的连接. 大概要做的:下载安装数据库--配置数据源ODBC--测试连接数据库--进行数据库中内容的添加. 关键是这些我都不会,这才是重点! 在学习数据库的过程 ...
- 学生信息管理系统中系统登录问题
在实现学生信息管理系统中,我们会经常遇到不能正常登录的问题,那么这到底是怎么回事呢? 我认为这里有几点主要原因: 1.数据库连接不成功:只有正确的连接数据库,是保证系统正常登录的必要条件! 2.在编写 ...
最新文章
- Android ViewAnimationUtils (动画) 的使用
- 批量管理服务器,批量分发文件
- 《剑指offer》第十八题(在O(1)时间删除链表结点)
- Swift 中如何测试驱动开发
- 请在请求中携带deviceid参数_日常工作中最容易犯的几个并发错误,你中了几个?...
- Error starting static Resources caused by project facet
- 201521123032 《Java程序设计》第7周学习总结
- axure 画小程序效果图_APP详情页如何用Axure画出来
- linux源码中的核心数据结构
- 医学诊断报告生成论文综述
- 禁用计算机上的所有鼠标加速,win10系统电脑的鼠标加速功能怎么关闭
- Vue表格table样式
- 2022.02.19四座楼苹果园
- P2184 贪婪大陆 线段树(优化:区间修改变为单点修改)
- 避免幻读 : next-key锁与MVCC
- 解决IOS微信浏览器底部会出现向前向后返回按钮,返回不刷新的问题
- 消费者大喊商家欺诈!宝贝ID下的商品违规修改也是定时炸弹!
- snipaste截图软件编辑时修改方框粗细
- 如何在win10安装libaio,并且使用CFLAGS和LDFLAGS环境变量指示其位置,并且如何设置DS_BUILD_AIO=0禁用async_io...
- javascript:加入收藏的代码
热门文章
- 70后 80后 90后的20个经典差别!70后的站出来吧
- FilterChain流程
- day5 from 金角大王
- Google将超越微软?打造网络计算机帝国[zz]
- BI报表工具: datagear、davinci、cboard、JimuReprot、ureport2
- Module “child_process“ has been externalized for browser compatibility and cannot
- 一级计算机考试查询成绩ms,计算机一级考试成绩查询
- Google云增加root帐户登录
- mysql导出建库语句_mysql建库建表,导出表结构
- Elasticsearch:如何在 Elastic 中实现图片相似度搜索