




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、ACCESS 登录权限 1我做了一个access的登录窗体,在加入代码后能够成功的登录,但是不能控制数据库权限,2011-06-21 11:26 昏睡的猫1号 | 分类:数据库DB | 浏览621次我做了一个access的登录窗体,在加入代码后能够成功的登录,但是不能控制数据库权限,也就是说我那个登录窗体即使不用密码登录也可以关闭和打开数据库,求不能够区分管理员和用户,两者都可以修改数据库,这是我的代码Private Sub cmdYes_Click()On Error GoTo erIf IIf(IsNull(Me.用户名), "", Me.用户名) = "&q
2、uot; Or IIf(IsNull(Me.密码), "", Me.密码) = "" Then MsgBox "请输入用户名和密码!", vbInformation, "登录"Me.用户名.SetFocusExit SubEnd IfDim rst As New ADODB.Recordsetrst.Open "select 用户名 from 用户 where 用户名='" & Me.用户名 & "' and 密码='" & M
3、e.密码 & "'", CurrentProject.AccessConnection, adOpenForwardOnly, adLockReadOnlyIf rst.EOF ThenMsgBox "用户名或密码错误,请重新输入!", vbCritical, "登录"Me.用户名.SetFocusElse'记录登录用户名和登录时间Dim rstInsert As New ADODB.RecordsetrstInsert.Open "登陆日志", CurrentProject.Connect
4、ion, adOpenDynamic, adLockOptimistic With rstInsert.AddNew!用户名 = Me.用户名.UpdateEnd WithrstInsert.CloseSet rstInsert = NothingDoCmd.CloseEnd Ifrst.CloseSet rst = NothingExit_cmdYes_Click:Exit Suber:MsgBox Err.DescriptionResume Exit_cmdYes_Click 上面字打错了,是不能狗区分管理员和用户的权限,而且即使是我不用窗体登录也可随便修改数据库,要入何修改才可以分清管理
5、员权限而且如果不用密码登录就不能打开数据库啊,我的qq是692153207,求高手解答,万分感激。建议:可使用微信的“扫一扫”功能扫描下载分享到:2011-06-21 11:36 提问者采纳那是你代码写的问题,登陆和权限没有关系,access的权限不强,只能这样控制了,你要做的是判断提交过来的资料是否可以被当前用户处理,不能就直接结束程序或者是跳过就好了追问如何判断提交过来的资料是否可以被当前用户处理,不能就直接结束程序或者是跳过就好了 ,登录窗体可以识别是不是用户登录,但问题在于,即使我没有登录,程序也不会结束,我仍然可以继续编辑数据库,这样登录窗体就失去意义了,关键是如何直接结束在登录密码
6、错误的情况下,谢谢! 回答整个判断啊.判断是不是已经登陆就好了,登陆成功,将数据记录到session里面,你们老师没有说过吗? 判断可不可以操作,就在用户表里面加个权限字段,表示是不是管理员啊,然后,操作的时候,检查下是不是权限足够了,就可以了啊提问者评价谢谢!老师没讲过,是说过用安全向导做,再加上我上课没听,下来都是自己自学的,很多都不懂,不过谢谢!评论 | 00ACCESS 登录窗口2 关于access登录窗口代码!2010-01-03 01:48 bradcheng | 分类:数据库DB | 浏览2704次Private Sub login_ok_Click()Dim userID As
7、 IntegerIf IsNull(Me.Com用户) = False ThenIf DLookup("密码", "系统用户", "用户名='" & Com用户 & "'") = Me.txt密码 ThenuserID = DLookup("id", "系统用户", "用户名=""" & Com用户 & """")DoCmd.CloseDoCmd.O
8、penForm "主窗口"Form -主窗口.User = userIDElsetxt密码 = ""txt密码.SetFocusMsgBox "密码错误!", vbCriticalEnd IfEnd IfEnd Sub请问这段代码哪儿有问题?点“确定”就是没反应。新手!谢谢高手了!分享到:2010-01-03 07:36 提问者采纳程序比较乱,说access登录窗口,但没有发现连接数据库的关键语句。很多不知道是控件还是其他,其实access登录窗口是特别简单的,只要使用文本框中的数据和数据库的数据进行对比即可。 给你代码参考:Priv
9、ate Sub Command1_Click()'登录确认Dim sqldl As StringIf Text1.Text = "" Or Text2.Text = "" ThenMsgBox "没有输入用户名或用户密码,请输入!", 16, "警告!"Text1.SetFocusText2.Text = ""Exit SubEnd Ifdb.ConnectionString = "DRIVER=Microsoft Access Driver (*.mdb);dbQ="
10、; & App.Path & "数据库名.mdb"db.OpenstrSQL = "select * from 登录表 where 名称='" & Text1.Text & "'"RS.Open strSQL, db, 3, 3If RS.EOF = True ThenMsgBox "没有这个用户,请重新输入用户名!", 16, "警告"Text1.SetFocusText1.Text = ""Text2.Text = &quo
11、t;"RS.CloseSet RS = Nothingdb.CloseExit SubEnd IfIf RS("密码") <> Text2.Text ThenMsgBox "密码不正确,请重新输入!", 16, "警告"Text2.SetFocusRS.CloseSet RS = Nothingdb.CloseExit SubEnd IfRS.CloseSet RS = Nothingdb.CloseUnload Me需要启动的窗体名.ShowEnd Sub提问者评价辛苦了评论 | 70ACCESS登录窗口 3
12、VB+access设置登陆权限问题2012-04-06 20:33 vbnm88244 | 分类:VB | 浏览1265次就是说我做了一张表,里面包含了,用户名,密码和权限用户名 密码 权限admin 123 管理员wang 321 员工而权限是用中文字体表示“管理员”,"员工"现在想做到用户登陆之后,如果是管理员就可以使用所有功能,而员工登陆有部分功能无法使用。 该怎么做,请帮忙,最好有代码Private Sub Command1_Click()If Text1.Text = "" ThenMsgBox "用户名不能为空"Text1
13、.SetFocusExit SubEnd IfIf Text2.Text = "" ThenMsgBox "密码不能为空"Text2.SetFocusExit SubEnd IfAdodc1.RecordSource = "select * from 登陆 where 帐号='" & Text1.Text & "'"Adodc1.RefreshIf Adodc1.Recordset.EOF ThenMsgBox "没有这个用户,请重新输入正确的用户名", , &q
14、uot;错误提示"ElseIf Text2.Text = Adodc1.Recordset.Fields("密码") ThenForm2.ShowForm1.HideElseMsgBox "你的密码错误,请输入正确的用户密码!", , "错误提示"End IfEnd IfEnd Sub 分享到:2012-04-06 21:57 提问者采纳在模块中定义一个全局变量,例如:QX,在登录时,将用户的权限存储在变量QX中,进入登录后的界面:Private Sub Form_Load()If QX = "管理员"
15、Then'使员工不能使用的功能为真的代码'.ElseIf QX = "员工" Then'使员工不能使用的功能为假的代码'.End IfEnd Sub追问If qx = "管理员" ThenCommand3.Visible = tureCommand3.Enabled = tureElseIf qx = "员工" ThenCommand3.Visible = FalseCommand3.Enabled = flaseEnd If这样?请问怎样 将用户的权限存储在变量QX中回答添加一个模块,在模块中定义一个
16、全局变量, Public QX As String在登录界面:QX=RS!权限追问模块中添加了 Public QX As String,也在进入登录后的界面添加了代码,还是不行。 回答在登录界面:登录成功后:QX=RS!权限(RS!权限 是读取数据库的权限字段的数据),如果你没有连接数据库,就不能这样。另外:If qx = "管理员" ThenCommand3.Visible = tureCommand3.Enabled = tureElseIf qx = "员工" ThenCommand3.Visible = FalseCommand3.Enabled
17、 = flaseEnd If中用Command3.Visible = ture就不要再用Command3.Enabled = ture追问QX=RS!权限添加在登陆界面哪里?添加在Private Sub Command1_Click()里面就显示要求对象添加在FORM里面都显示要求对象回答在登录界面:登录成功后:QX=RS!权限(RS!权限 是读取数据库的权限字段的数据),如果你没有连接数据库,就不能这样。“添加在Private Sub Command1_Click()里面就显示要求对象”估计你没有连接数据库,就你的登录的Private Sub Command1_Click()代码给我,帮你。
18、追问我发在补充问题那里了,请看看回答If Adodc1.Recordset.EOF ThenMsgBox "没有这个用户,请重新输入正确的用户名", , "错误提示"ElseIf Text2.Text = Adodc1.Recordset.Fields("密码") ThenForm2.ShowForm1.HideQX = Adodc1.Recordset.Fields("权限") '这里将用户权限加在变量QX中ElseMsgBox "你的密码错误,请输入正确的用户密码!", , &quo
19、t;错误提示"End IfEnd If追问qx = RS!权限 添加在Private Sub Command1_Click()里面显示要求对象我原来是可以登陆进去的回答QX = Adodc1.Recordset.Fields("权限") '这里将用户权限加在变量QX中 这样修改,因为你链接的是Adodc1,不是RS记录集对象追问终于可以了。权限那里改成1,0。Public QX As integer改成这样就可以了。用中文就不行。提问者评价谢谢那么耐心帮我ACCESS 登录窗口4 怎么用VB和access做一个登陆界面 分用户权限2010-10-12 14
20、:55 ak47863 |分类:数据库DB | 浏览3180次我使用的ADO控件 表已经连好了 Combo1 分为 管理员 和 员工access 表名为 商品信息表.mdb 当选择完权限 输入完 用户名和密码后 判断是否正确 正确后进入 下一菜单 如果连续出现3次输入错误则无权访问系统 并自动退出 请问 这个 代码怎么写分享到:2010-10-13 09:18 提问者采纳以下是我以前写的一段代码,你修改一下完全能解决你的问题。Private Sub Command1_Click()If Text1.Text = "" Or Text2.Text = ""
21、 ThenMsgBox "请输入完整的用户名及密码!", vbCritical, "警告"Elsers1.Open "Select * From 制表人 Where 登录名='" & Text1.Text & "'", cn, adOpenKeyset, adLockOptimisticstra = rs1.Fields(2)inta = rs1.RecordCountrs1.CloseIf inta = 0 ThenMsgBox "无此用户!", vbCriti
22、cal, "警告"Exit SubElseIf Text2.Text = stra Thenrs1.Open "Select 制表人ID From 制表人 Where 登录名='" & Text1.Text & "'", cn,adOpenKeyset, adLockOptimistica = rs1.Fields(0) '记录ID后可以在欢迎界面显示是谁登录,也可记录谁对软件进行更改和删除。该变量模块中声明rs1.Closers1.Open "select 权限,姓名 from 制表
23、人 where 登录名='" & Text1.Text & "'", cn, adOpenKeyset, adLockOptimisticname1 = rs1.Fields(1)name2 = rs1.Fields(0) '记录权限后可以限制用户的一些功能,该变量在模块中声明rs1.CloseUnload MeForm16.ShowElseMsgBox "密码错误!", vbCritical, "提示"intCount = intCount + 1If intCount = 3 Th
24、en ' 三次错误,程序退出MsgBox "密码错误登录次数超过限制次数!", vbCritical, "警告"EndEnd IfExit SubEnd If End IfEnd IfEnd Sub提问者评价自己解决了 还是谢谢你了Access登录窗口 5 Private Sub Command1_Click()Adodc1.RecordSource = "select * from 登陆 where 帐号='" & Text1.Text & "'" Adodc1.Refre
25、shIf Adodc1.Recordset.EOF ThenMsgBox "没有这个用户,请重新输入正确的用户名", , "错误提示" ElseIf Text2.Text = Adodc1.Recordset.Fields("密码") ThenForm2.ShowForm1.Hideqx = Adodc1.Recordset.Fields("权限")ElseMsgBox "你的密码错误,请输入正确的用户密码!", , "错误提示" End IfEnd Ifend sub在公共
26、模块添加了 Public qx As integer,在主窗口也加了Private Sub Form_Load()If qx = "1 ThenCommand3.Visible = TrueCommand1.Enabled = TrueElseIf qx = "0 ThenCommand3.Visible = FalseCommand1.Enabled = FalseEnd IfEnd Sub运行程序分不了权限,求指导分享到:2012-04-08 15:33 提问者采纳你这个变量qx是定了的公有变量吗?你要添加一个公有模块并且用dim语句对qx进行申明。否则虽然你form_
27、load和command1_click使用的是同名的变量,但是并不是相同的一个变量。他们在事件过程结束后就不存在了。还有你的form_load跟command1_click应该不是同一个窗体里的吧?否则前者发生时,后者还没读取权限数据,当然不能分配权限。追问没有DIM QX申明。应该在哪里DIM?command1_click是登陆界面的form_load 是登陆之后的主界面回答工程里面右键,添加一个模块,在模块里写入:dim qx as integer 或者 string ,看你那个权限是数字还是字符串来确定类型追问在公共模块写入了dim qx as integer ,删了Public qx
28、As integer还是没有分出。权限是数字型的回答哦 sorry,原来public就是对的 疏忽了。程序发到邮箱给你看看 七零三六二六零圈圈.com追问不用,那么耐心教我就足够了继续求解已经发了给你邮箱,请看看回答找到原因了,错在这里:Form2.ShowForm1.Hideqx = Adodc1.Recordset.Fields("权限")应该把qx = Adodc1.Recordset.Fields("权限")这句上移到前面,改成:qx = Adodc1.Recordset.Fields("权限")Form2.ShowForm1
29、.Hide因为按照你原来的代码,Form2加载的时候权限信息还没从数据库里读取,所以当然无法分配权限了。提问者评价谢谢那么耐心ACCESS 权限窗体 6 vb+access'权限相关2009-11-15 13:39 anxihanxx | 分类:VB | 浏览830次If userpow = "普通用户" Then '权限相关Frame2.Enabled = False End If我这样写但没有起到效果,想问为什么?说明:我有Frame2,并把几个按纽放在里面我的管理员表中有用户名 密码 权限三个字段我写成If "密码" = "
30、;普通用户"或If "权限" = "普通用户"都没有效!急等,在线!用户名 密码 权限123 123 管理员111 111 普通用户000 000 普通用户分享到:2009-11-15 14:23 提问者采纳用户名 密码 权限字段中的值?特别是权限字段对于不同用户使用不同权限,例如:用户名 密码 权限AA1 123 普通用户BB1 123 管理员哪么:If RS!权限="管理员" THEN'登录管理员界面ELSEIf RS!权限="普通用户" THEN'登录用户界面END IF提问者评价老
31、师很耐心,学生很佩服!评论 |00ZHRX | 十四级 采纳率33%擅长: VB 数据库DB 电脑/网络ACCESS 权限窗口 7VB权限设置,我是通过VB和ACCESS做的一块小软件,2012-03-15 20:56 790856931cp | 分类:VB | 浏览136次我想通过登录按钮实现管理员和普通用户的权限问题!很急同一个登录界面,登录分管理员和普通用户, 进去之后管理员能进行所有操作 而普通职员只能进行部分操作,其他菜单都是灰色的,禁用的谁以前做过分享到:2012-03-15 21:30 提问者采纳假如管理员对应开放的菜单名称都在一个字符串StrMenus里(这个事先保存在你数据库
32、里的),主窗体为 MainF,则代码如下:For Each V In MainF.ControlsVname = UCase(V.Name)If UCase(TypeName(V) = "MENU" ThenIf InStr(StrMenus, Vname) > 0 ThenV.Enabled = TrueElseV.Enabled = FalseEnd IfEnd IfNext 评论 |00anankid | 来自团队 电脑DIY | 十级 采纳率45% 擅长: VB 图像处理软件 办公软件 医疗健康 其他类似问题 2012-04-07 VB+access设置登陆权
33、限问题4 2012-04-09 vb+access分权限1 2009-11-15 vb+access'权限相关 2010-10-14 怎么用VB和access做一个登陆界面 分用户权限7 更多相关问题>>按默认排序 | 按时间排序其他1条回答2012-03-26 16:30 李一是天才 | 三级vb2008做的: userpri = ComboBox1.Text.ToString.Trim username = TextBox1.Text.ToString.Trim password = TextBox2.Text.ToString.Trim Dim n As Intege
34、r = judgeVege()If (username = "" And password = "") Then MessageBox.Show("用户名密码不能为空!") ElseIf (userpri = "操作员") ThenIf n >= 1 ThenForm1.Show()ElseMessageBox.Show("用户名或密码错误")End IfElseIf (userpri = "管理员") ThenIf n >= 1 ThenManager.Show
35、()ElseMessageBox.Show("用户名或密码错误")End IfEnd IfEnd IfTextBox1.Text = ""TextBox2.Text = ""ACCESS 登录窗口 ADO 版 ADO(ACTIVEX DATA OBJECTS)应用层的数据访问接口ODBC 数据库驱动接口OLE DB 系统级数据访问接口DAO (DATA ACCESS OBJECTS) 对象的数据访问接口ADO是基于全新的OLE DB技术而设计的.是一种基于应用程序层的数据访问接口.它是DAO/RDO的后继产物.DAO是VB最先采用的面
36、向对象的数据访问接口,通过DAO访问MICROSOFT JET数据库引擎. ADODC是封装ADO的VB数据控件,可减少代码编写.ADODB是数据对象,操作数据库需通过编写代码 来实现.以上简单说明仅供参考.想用VB做一个登陆界面如何和access相连接?2009-10-25 09:02 panweikl | 分类:数据库DB | 浏览2948次想用VB做一个管理系统的登陆界面,如何和access相连接?请回答具体一点?我是新手,我想看看每步的详细步骤。不要别处复制的。现在已经有一个access数据库,并且有一个数据表,表内有两个属性:Username和Password。 分享到:2009-1
37、0-25 20:34 提问者采纳1、首先在部件-控件里找到Microsoft ADO DataControl 6.0,打勾,然后在窗体上添加Adodc1。2. 添加两个文本输入框text1,text2,分别用来接收用户输入用户名和密码。3、在Adodc1控件的属性窗口中单击Connectionstring右侧的按钮,打开ADO的属性页,选择“使用连接字符串”,单击“生成”按钮,打开数据链接属性对话框,在“提供程序”页中选择Microsoft Jet 4.0 OLE DB Provider,单击“下一步”,在“连接”页中,输入数据库名称XXXX.mdb(前提是将数据库文件和工程文件保存在同一目录
38、下),单击“测试连接”,如果连接成功,单击“确定”即可。4、将以下代码添加到登录按钮:Private Sub Command1_Click()Adodc1.RecordSource = "select * from 数据表名称 where username='" & Text1.Text & "'" Adodc1.RefreshIf Adodc1.Recordset.EOF ThenMsgBox "没有这个用户,请重新输入正确的用户名", , "错误提示"ElseIf Text2.T
39、ext = Adodc1.Recordset.Fields("password") ThenMsgBox "登录成功!", , "错误提示"ElseMsgBox "你的密码错误,请输入正确的用户密码!", , "错误提示"End IfEnd IfEnd Sub提问者评价你给的解决方案比较简便易行。谢谢!评论(1) | 362其他2条回答2009-10-25 10:17 gavinfanlove | 五级1. 利用Adodc控件来实现,首先在部件-控件里找到Microsoft ADO DataCo
40、ntrol 6.0,打勾,然后在窗体上添加Adodc,设置visible 为 false。2. 添加textbox 两个,text1,text2 (将text2的PasswordChar属性值设置为*)3. 添加botton一个,command1Private Sub Form_Load()'连接数据库的信息(Jet OLEDB 4.0, DataSource - 数据库地址,这里用到了App.Path 意思是说在应用程序目录下的)Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=&
41、quot; & App.Path & "Biodoor.mdb;Persist Security Info=False"End SubPrivate Sub Command1_Click()'单击command1开始连接数据库,利用SQL语句来查询表(这儿暂时用Access数据库中的sys_Users数据表)Adodc1.RecordSource = "Select * From sys_Users Where UserName ='" & Text1.Text & "'" Ad
42、odc1.Refresh'判断是否存在数据If Adodc1.Recordset.EOF = True Then'如果不存在跳出窗口说 Invalid LoginMsgBox "Invalid Login!"Else'如果存在继续判断密码是否为text2的文本If Adodc1.Recordset.Fields("UserPassword") = Text2.Text Then'如果是跳出窗口说 WelcomeMsgBox "Welcome!"Else'否则跳出窗口说 Invalid Login
43、MsgBox "Invalid Login!"End IfEnd IfEnd Sub评论 | 102009-10-25 22:41 fzgyxxgs | 三级按照以下代码把你的表名、Username和Password改下就行了。Option ExplicitPublic appdisk As StringPublic conn As New adodb.ConnectionPublic rs As New adodb.RecordsetPublic Db As StringPrivate sSQL As StringPrivate Sub CommandButton1_Click()If Trim(Text1.Text) = "" And Trim(Text2.Text) = "&q
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 派遣和正式合同(标准版)
- 2025年物流概述考试试题及答案
- 财务总监岗位招聘笔试题及解答(某大型团公司)2025年
- 2025年铁路客运值班员新员工企业文化与规章制度考核题目及答案
- 广西桂林市2025年职业卫生技术服务专业技术人员考试(职业卫生检测)模拟题库及答案
- 2024年刮墨刀投资申请报告代可行性研究报告
- 2025年气候变化对农业气候适应技术
- 2025年气候变化对极地冰川融化的影响
- 2025年高二物理上学期第一次月考试题
- 2025年高二物理上学期“中国天眼”FAST中的波动学知识考查
- 2025政治理论时政热点知识试题库附完整答案
- 民间借贷抗诉申请书
- 四川康定偏岩子金矿床成矿流体特征:剖析与启示
- 消毒灭菌教学课件
- 2025年考研护理综合全程真题及答案
- 工会安全监督培训课件
- 学堂在线 知识产权法 章节测试答案
- 小学道德与法治五年级上册《烟酒有危害》教学课件
- 减脂课件教学课件
- 2025 SMETA员工公平职业发展管理程序-SEDEX验厂专用文件(可编辑)
- 卫生法律法规试题题库(附答案)
评论
0/150
提交评论