当前位置:编程学习 > C#/ASP.NET >>

C#中如果实现和数据库的密码比对?

我是用Access,我想让用户输入的口令和数据库里数据进行比对,如果正确则可以进入,否则不能.并且还要能修改密码!请帮帮我,告诉我要怎么实现? --------------------编程问答-------------------- 找一个简单的 用户登录示例吧 --------------------编程问答-------------------- 哦,夜里睡不着,上来看看,竟然看到了你这个问题,

没人回你,我回个吧,要不就冷场了。

下次建义你不要问这种,要code的问题,而且还是very simple的,

你应该问点有难度的,有深度的  --------------------编程问答-------------------- 本人刚学,自己抄了一个


//把用户名和密码赋值给uname和upws
string uname = this.text_name.Text.Trim();
string upws = this.text_pws.Text.Trim();


            try
            {
                con.Open();
                string str_SQL = "select users.user,users.psw from users where user = '" + uname + "'";
                OleDbCommand myCmd = new OleDbCommand(str_SQL,con);
                OleDbDataReader myDr = myCmd.ExecuteReader();
                myDr.Read();
                
                //判断是否有记录返回
                if (myDr.HasRows == false)
                {
                    MessageBox.Show("该用户名不存在!");
                    text_name.Text = "";
                    text_name.Focus();
                    text_pws.Text = "";
                    myDr.Close();
                    return;
                }

                if (myDr["psw"].ToString().Equals(upws))
                {
                    MessageBox.Show("欢迎登陆!");
                    //打开主窗口的
                    mainForm main = new mainForm();
                    main.Show();
                    this.Hide();
                }
                else
                {
                    MessageBox.Show("密码错误!");
                    text_pws.Text = "";
                    text_pws.Focus();
                    myDr.Close();  //关闭连接!!!

                }

            }
            catch (Exception exp)
            {
                MessageBox.Show(exp.ToString()); 
            } --------------------编程问答-------------------- -_-!!! 不是吧... --------------------编程问答-------------------- 1楼,famemkl 如果你不想回答就算了,何必这样说呢?在论坛上还是要有点素质!!!!!!!!!!!!!!!!!!! --------------------编程问答-------------------- 是2楼,famemkl 如果你不想回答就算了,何必这样说呢?在论坛上还是要有点素质!!!!!!!!!!!!!!!!!!! --------------------编程问答--------------------  if   (myDr["psw"].ToString().Equals(upws)) 

这样比是不正确的,Equals()只能说明myDr["psw"].ToString()和upws都是字符串对象,并没有比较字符串中的字符是否相等

应该用CompareTO()方法比较

if(myDr["psw"].ToString().CompareTo(upws) == 0)
{
   //TODO:
} --------------------编程问答-------------------- 两个思路:
1,根据录入用户名去数据库里检索密码,然后对获取的密码和当前录入的密码进行比对!
2,根据录入用户名和密码去数据库里检索,如果有这条记录,即可正常登录

更新的原理是一样的:
像这样的用户名,登录名肯定是主键或是唯一的,所以你就可以根据登录名去修改密码!Ex:
update password from users where loginname='当前录入的用户名'

供参考,希望对楼主有帮忙!
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,