CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  数据库(包含打印,安装,报表)

如何修改密码

楼主bangbangwo(求教)2005-05-25 15:50:41 在 VB / 数据库(包含打印,安装,报表) 提问

我做了一个修改密码的窗体,希望通过combo1列表选择用户名,再输入新密码实现对密码的修改。  
  请问combo1应如何设置?  
  用户信息表名:user_Info  
  用户名:user_ID  
  密码:user_pwd  
  我写的程序如下:(就是不会写combo1部分的程序,请各位帮我看看)  
  Private   Sub   cmdOK_Click()  
          Dim   txtSQL,   MsgText   As   String  
          Dim   mrc   As   ADODB.Recordset  
           
           
          txtSQL   =   "select   *   from   user_Info   where   user_ID   =   combo1的内容  
                  Set   mrc   =   ExecuteSQL(txtSQL,   MsgText)  
                  mrc.Fields(1)   =   Text1(1).Text     密码框内容  
                  mrc.Update  
                  mrc.Close  
                  MsgBox   "密码修改成功!",   vbOKOnly   +   vbExclamation,   "修改密码"  
                  Me.Hide  
                   
          End   If  
                   
                   
  End   Sub  
  问题点数:20、回复次数:17Top

1 楼yangao(人品决定一切,相貌决定人品!)回复于 2005-05-25 16:14:40 得分 8

Private   Sub   Form_Load()  
   
          Dim   txtSQL   As   String  
          Dim   mrc   As   ADODB.Recordset  
           
          txtSQL   =   "select   *   from   user_Info"  
           
          Set   mrc   =   ExecuteSQL(txtSQL,   "")  
           
          While   Not   mrc.EOF  
                  Combo1.AddItem   mrc.fields("user_ID")  
                  mrc.MoveNext  
          Wend  
           
  End   SubTop

2 楼zdcwin(赵大成)回复于 2005-05-25 16:55:35 得分 0

楼上的为正解,呵呵  
  Top

3 楼cxbkkk(本命年,旺啊!)回复于 2005-05-26 00:38:33 得分 0

哦,我知道了,你那个部分就这样写就是了  
  txtSQL   =   "select   *   from   user_Info   where   user_ID   ='"   &   Trim(combol)   &   "'"Top

4 楼bangbangwo(求教)回复于 2005-05-26 20:08:37 得分 0

我按各位给的信息修改了程序,但运行时显示“bof   或eof中有一个是“真”,或者当前记录以被删除,所需的操作要求一个当前的记录”。单击“调试”黄色内容为:mrc.Fields(1)   =   Text1(1).Text   '密码框内容.  
          我所选择的用户名是存在于数据库表中的,请问出现以上问题,是哪写错了?怎么改?  
  Top

5 楼therockdelt(Dm和弦)回复于 2005-05-27 07:02:44 得分 0

你的数据库还是空的吧???/Top

6 楼bangbangwo(求教)回复于 2005-05-27 10:57:51 得分 0

我打开数据库user-info表看到了要修改密码的表项,数据库表不是空的。我错在哪,该怎么改?Top

7 楼jiataizi(佳太子)回复于 2005-05-28 00:02:11 得分 5

楼主,要修改密码的一个正规的流程是,先输入旧密码,然后输入新密码和确认新密码,验证的时候要先验证下旧密码是不是这个用户的密码,如果是,再修改;如果不是,就不修改。  
  不然只要你进入系统,没有退出系统,谁人都可以修改你的密码啊,呵呵  
  程序上面楼上的写的差不多咯,主要是修改密码流程给楼主提醒一下。Top

8 楼Free_Windy(自由风)回复于 2005-05-28 08:57:29 得分 0

对,,,应该这样的.需要输入旧密码才能修改Top

9 楼bangbangwo(求教)回复于 2005-05-28 22:11:07 得分 0

运行时显示“bof   或eof中有一个是“真”,或者当前记录以被删除,所需的操作要求一个当前的记录”。单击“调试”黄色内容为:mrc.Fields(1)   =   Text1(1).Text   '密码框内容.  
          我打开数据库user-info表看到了要修改密码的表项,数据库表不是空的。我错在哪,该怎么改?Top

10 楼bangbangwo(求教)回复于 2005-05-29 17:22:03 得分 0

问题解决了,立刻给分,请帮我解决一下Top

11 楼bangbangwo(求教)回复于 2005-06-02 20:32:36 得分 0

没人能解决吗?  
  Top

12 楼cxbkkk(本命年,旺啊!)回复于 2005-06-02 20:44:32 得分 3

你应该在打开这个修改密码的窗体的时候通过additem来把数据库中的所有用户名添加到combo1的list中,然后当你改了密码后就执行"update   set   你表中密码字段的名字='"   &   输入新密码的那里   &   "'   where   用户名='"   &   combo1   &   "'"  
   
  条件是你数据里面有数据哈!  
  打完收工Top

13 楼bangbangwo(求教)回复于 2005-06-04 21:09:27 得分 0

用此方法做了,但还没有修改成。  
  If   Trim(Text1(1).Text)   <>   Trim(Text1(2).Text)   Then  
                  MsgBox   "两次输入的密码不一致,请重新输入!",   vbOKOnly   +   vbExclamation,   "警告"  
                  Text1(1).SetFocus  
                  Text1(1).Text   =   ""  
                  Text1(2).Text   =   ""  
          Else  
      txtSQL   =   "update   user_Info   set   user_PWD   ='"   &   Trim(Text1(1).Text)   &   "'   where   user_ID   =   '"   &   Trim(Combo1)   &   "'"                                               /修改密码     text(1)为输入密码的文本框  
                          Set   mrc   =   ExecuteSQL(txtSQL,   MsgText)  
                  MsgBox   "密码修改成功!",   vbOKOnly   +   vbExclamation,   "修改密码"  
                  Unload   Me  
          End   If  
  End   Sub  
  程序运行,输入密码后,显示“修改成功”,但在数据库表中密码并没有修改,所在哪了,请帮我改改。  
  问题解决立刻给分。  
  Top

14 楼plovej(把自己变为挣钱的机器)回复于 2005-06-04 21:48:11 得分 4

Private   Sub   cmdok_Click()  
  Dim   strInsertSQL   As   String  
  On   Error   Resume   Next  
  RecordsetUser.MoveFirst  
  While   RecordsetUser.EOF   =   False  
  If   RecordsetUser.Fields("密码").Value   =   txtoldpwd.Text   And   RecordsetUser.Fields("帐号").Value   =   txtname.Text   Then  
          If   txtnewpwd1.Text   =   txtnewpwd2.Text   Then  
                strInsertSQL   =   "update   [user]   set   密码="   &   "'"   &   txtnewpwd1   &   "'"   &   "where   帐号="   &   "'"   &   user   &   "'"  
                        If   ExecuteSQL(strInsertSQL)   =   True   Then  
                              MsgBox   "密码更改成功!",   vbInformation   +   vbOKOnly,   "保存成功"  
                              Unload   frmsystem  
                              Exit   Sub  
                        End   If  
          Else  
                MsgBox   "你两次输入的新密码不一样,请确认后再输入!",   vbExclamation   +   vbOKOnly,   "提示"  
                Exit   Sub  
          End   If  
   
  '       MsgBox   "密码错误!请确认后再输入!",   vbExclamation   +   vbOKOnly,   "提示"  
  End   If  
  RecordsetUser.MoveNext  
  Wend  
  MsgBox   "密码不正确!",   vbExclamation   +   vbOKOnly,   "提示  
   
  看看上面的能不能看懂!Top

15 楼bangbangwo(求教)回复于 2005-06-05 22:11:54 得分 0

能不能将你的窗体内容具体的写一下,以便我能容易理解。Top

16 楼xuanshine()回复于 2005-06-08 14:18:20 得分 0

为什么我修改成功了密码之后,还出现这样的提示:  
  Operation   is   not   allowed   when   the   object   is   open.Top

17 楼cxbkkk(本命年,旺啊!)回复于 2005-06-08 18:16:56 得分 0

我在你新帖子回复了的,给分啊,大哥Top

相关问题

  • 如何修改密码?
  • 如何修改cert.id密码?
  • 如何修改SA密码
  • 如何修改密码??
  • 如何修改站点的密码?
  • ************DAO中如何修改access的密码***************
  • 如何修改Sa的密码?
  • 如何修改登录密码?
  • 如何把MYSQL的ROOT密码修改?
  • 如何修改用户密码?

关键词

  • 密码
  • 修改
  • 数据库
  • 用户
  • 内容
  • mrc
  • txtsql
  • vbokonly
  • vbexclamation
  • recordsetuser

得分解答快速导航

  • 帖主:bangbangwo
  • yangao
  • jiataizi
  • cxbkkk
  • plovej

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo