tempad
Readygo技术搜索引擎 >>软件工程 >> 用户管理问题

用户管理问题

Readygo技术搜索引擎 网络搜索 efish 2008-1-17 7:16:43

用户管理问题

楼主jxhaq(atp)2003-06-30 17:27:37 在 VB / 数据库(包含打印,安装,报表) 提问

数据库中有一张表是用户表,有字段username,password,我现在利用list控件来显示已有用户,增加,删除用户和修改用户密码,遇到以下几个问题:  
  1。怎样利用list只显示username字段中的用户名.  
  2。如何修改用户密码。  
  3。用户登陆时如何进行判断  
   
  我已编写了代码连接到了用户表:  
  Dim   Sqluser   As   String  
  Dim   strcnn   As   String  
  strcn   =   "Provider=SQLOLEDB.1;Persist   Security   Info=False;User   ID=ee;password=eeade;Initial   Catalog=ClientData;Data   Source=DATACENTER"  
  Set   cn   =   New   ADODB.Connection  
      With   cn  
          If   cn.State   =   adStateOpen   Then  
                .Close  
          End   If  
          .ConnectionString   =   strcn  
          .CursorLocation   =   adUseClient  
          .Open  
      End   With  
   
  Sqluser   =   "select   *   from   usertable"  
  Set   rs3   =   New   Recordset  
      With   rs3  
                .ActiveConnection   =   cn  
                .CursorLocation   =   adUseClient  
                .CursorType   =   adOpenDynamic  
                .Open   Sqluser,   cn,   ,   ,   adCmdText  
                If   rs3.BOF   And   rs3.EOF   Then  
                      MsgBox   "请先增加用户!"  
                  Else  
                    For   i   =   0   To   rs3.RecordCount   -   1  
                          List1.AddItem   rs3.Fields(i).Value  
                    Next   i  
                  End   If  
      End   With  
   
  各位高手请帮忙,怎样才能实现,最好能写出代码来,小弟将万分感激,事成之后一定给分。 问题点数:30、回复次数:6Top

1 楼jxhaq(atp)回复于 2003-06-30 20:27:16 得分 0

怎么没有人回答呀,帮我解决第一个问题也可以呀Top

2 楼topsir(top)回复于 2003-06-30 22:18:11 得分 5

rs.movelast  
  rs.movefirst  
  For   i   =   0   To   rs3.RecordCount   -   1  
                          List1.AddItem   rs3.Fields(1).Value   "username是第几个字段,若为第一字段,则为0  
    rs.movenext  
    Next   i  
   
  Top

3 楼csdngoodnight(居然比我还快,你真行!)回复于 2003-07-01 08:45:43 得分 25

"第3题  
   
  "给你个现成的代码,控件自己加上去  
   
  "这是两个按钮:确定(Command1(0)),取消(Command1(1))  
  Private   Sub   Command1_Click(Index   As   Integer)  
          If   Index   =   0   Then         "按下确定键,判断用户名和密码  
           
                  If   Combo1.Text   =   ""   Then  
                          MsgBox   "您输入用户名!",   vbOKOnly   +   vbCritical,   "登陆密码验证"  
                           
                          Combo1.SetFocus  
                          Exit   Sub  
                  End   If  
                   
                  "从数据库中查看密码(略)  
                  ..........  
                  adoRS.Open   "SELECT   *   FROM   Guanli   where   name   .........                  
                  If   Text1.Text   =   adoRS!   Then  
                          "密码通过验证  
                          窗体名.Show  
                  Else  
                          "密码错误  
                          MsgBox   "您输入的密码错误!请重新输入,或联系管理员。",   vbOKOnly   +   vbCritical,   "登陆密码验证"  
                          Text1.SetFocus  
                          Text1.SelStart   =   0  
                          Text1.SelLength   =   Len(Text1.Text)  
                  End   If  
                   
          Else  
                  Unload   Me  
                  Set   当前窗体名   =   Nothing  
          End   If  
  End   Sub  
   
  "给combo1赋值,以供选择用户名  
  Private   Sub   Form_Load()  
          adoRS.Open   "SELECT   *   FROM   .............          
          Dim   add$  
          Combo1.Clear  
          Do   Until   adoRS.EOF  
                  add$   =   adoRS!name  
                  Combo1.AddItem   add$  
                  adoRS.MoveNext  
          Loop  
  End   SubTop

4 楼csdngoodnight(居然比我还快,你真行!)回复于 2003-07-01 08:51:17 得分 0

"第2题  
  Private   Sub   cmdok_Click()  
          On   Error   Resume   Next  
          Dim   strSql     As   String    
          "对库查询的条件(略)  
           
          If   Text1(0).Text   =   ""   Then  
                  MsgBox   "请输入用户名!",   48,   "警告"  
     
                  Text1(0).SetFocus  
          Else  
                  strSql   =   Trim(Text1(0).Text)  
                  ...........  
                  "检测该用户名的原始密码  
   
                  adoRS.Open   "SELECT   *   FROM   表   where   name   like   "%"   &   strSql   &   "%""....  
           
                  If   adoRS.EOF   Then  
                          "若没有,则检查密码一致与否  
                          MsgBox   "该用户不存在!",   vbOKOnly   +   vbExclamation,   "警告"  
                          Text1(0).SetFocus  
                          Text1(0).SelStart   =   0  
                          Text1(0).SelLength   =   Len(Text1(0).Text)  
                          Exit   Sub  
                  Else  
                          "否则,检测原始密码  
                          If   Text1(1).Text   =   adoRS!   Then  
                                  "密码正确,检测新密码一致与否  
                                  If   Text1(2).Text   =   Text1(3).Text   Then  
                                          "一致则,更新数据  
                                          adoRS!   =   Text1(2).Text  
                                          adoRS.UpdateBatch   adAffectAll  
                                   
                                          MsgBox   "修改密码成功!",   vbOKOnly   +   vbExclamation,   "添加用户"  
                                          Unload   Me  
                                  Else  
                                          MsgBox   "输入密码不一致!",   vbOKOnly   +   vbExclamation,   "警告"  
                                          Text1(2).Text   =   ""  
                                          Text1(3).Text   =   ""  
                                          Text1(2).SetFocus  
                                          Exit   Sub  
                                  End   If  
                          Else  
                                  MsgBox   "密码错误!",   vbOKOnly   +   vbExclamation,   "警告"  
                                  Text1(1).SetFocus  
                                  Text1(1).SelStart   =   0  
                                  Text1(1).SelLength   =   Len(Text1(1).Text)  
                                  Exit   Sub  
                          End   If  
                  End   If  
          End   If  
           
  End   Sub  
  Top

5 楼csdngoodnight(居然比我还快,你真行!)回复于 2003-07-01 08:52:33 得分 0

这些是用ADO语句连接Access数据库,相关连接你自己改吧Top

6 楼j4sxw(HELLOworld :))回复于 2003-07-01 10:40:53 得分 0

UPTop

责任编辑: efish 参与评论 查找更多:
相关文章
关于键盘控制的问题:在一个窗体上用键盘控制一个控… 关于键盘控制的问题:在一个窗体上用键盘控制一个控件(command1)的运动,为什么没有反应,我已经设了form1的keypriview属性
mysql中一个菜鸟问题 mysql中一个菜鸟问题
我是一个17岁的高中生,一边在校学“科学文化知识”… 我是一个17岁的高中生,一边在校学“科学文化知识”一边学VC++,感慨啊~!真的很羡慕这里的大学生、IT人,有大把的时间来学编程!
为什么我这样总是陷入死循环呢?我想判断在插入记录之… 为什么我这样总是陷入死循环呢?我想判断在插入记录之前是否有重复的工作人员ID号?
在windows 2000中通过API函数和注册表获得详细的系统… 在windows 2000中通过API函数和注册表获得详细的系统信息?急!急!非常急!
一个更新时检查输入数据的小问题,用什么方法比较好呢… 一个更新时检查输入数据的小问题,用什么方法比较好呢?在线等!!
还有。。。。 还有。。。。
怎样设定和读取Mutex变量的值,已经Create好的 怎样设定和读取Mutex变量的值,已经Create好的
哪有〈Delphi开发人员指南〉一书下载??? 哪有〈Delphi开发人员指南〉一书下载???
如何在Linux下实现时间定时? 如何在Linux下实现时间定时?
2秒记住本站域名

玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的readygo.com.cn

分类导航
Readygo技术搜索引擎