Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

如何用代码实现判断用户输入密码是否正确

董秀杰  发表于:2009-06-04 20:12:22  
复制

我想用代码实现:判断用户输入的秘密是否与密码表里的一样,如果相同就调用另一个窗体,如果不同就提示错误。

如 If IsNull(Me.Psw) Then
           MsgBox "请输入修改权限密码!", vbCritical, "提示:"
           Me.Psw.SetFocus
           Exit Sub
   End If

 

但是代码不会写,请高手指点一下,谢谢。

 

 

Top
善裕 发表于:2009-06-04 20:40:13

可否将你的例子上传,因为要知道你密码表的名称与对应字段,



善裕 发表于:2009-06-04 20:49:32

这样,试试,部分文字改成你的内容

If IsNull(Me.Psw)<>DLookup("密码", "密码表","还可加其他条件")then

MsgBox "密码不正确,请重新输入!", vbCritical, "提示:"

me.psw.setfocus

else

docmd.openform "窗体"

end if



豆豆 发表于:2009-06-04 21:32:30
if isnull(me.name)=false and isnull(me.password)=false  and me.password=DLookup("密码", "密码表","用户名='" & me.name & "'") then

董秀杰 发表于:2009-06-04 22:09:24

谢谢,我试下



董秀杰 发表于:2009-06-04 22:34:03
If IsNull(Me.Psw) <> DLookup("[Psw]", "tblPsw", "[PswId] = P01") Then
         MsgBox "密码不正确,请重新输入!", vbCritical, "提示:"
         Me.Psw.SetFocus
       Else
       DoCmd.OpenForm "frmBxmx_child_Edit"
       End If

 

 

“Psw”字段为“密码”,“tblPsw”为密码表,“PswId”为密码序号,“P01”为第P01条密码。我试了,出错啊。

Me.Psw把密码“123456”带过来了,好像是("[Psw]", "tblPsw", "[PswId] = P01")从tblPsw中取到第P01条密码“123456”,但是运行时出错,这里有问题?



Access爱好者 发表于:2009-06-04 23:06:22

If Me![psw] <> DLookup("psw", "tabel", "[id]='" & Me![id] & "'") Then

  MsgBox "密码错误,请重新输入.", , vbOKOnly + vbInformation, "密码错误"

   Me![psw].SetFocus

Else

  DoCmd.OpenForm "窗体名"

End If

 看这样是否能帮你解决问题.



董秀杰 发表于:2009-06-09 14:23:15

谢谢,问题解决了,以后会在安全功能完善上用到以上的代码



总记录:7篇  页次:1/1 9 1 :