如何实现c# winforn 登录验证(需要连接数据库对输入的用户名和密码进行匹配验证)
展开全部
嗯,你有思路吧?我很久没写这方面的程序了,我的思路给你:
点登录,在登录按钮的Click事件里面,临时保存文本框的Text属性,执行数据库的链接,根据文本框的Text值查询,得到的结果(即查询到的记录的条数)不等于0就是验证成功了,希望对您有帮助,
点登录,在登录按钮的Click事件里面,临时保存文本框的Text属性,执行数据库的链接,根据文本框的Text值查询,得到的结果(即查询到的记录的条数)不等于0就是验证成功了,希望对您有帮助,
追问
嗯,先谢谢你对我的提问的关注,你说得对,思路就是这样,我把数据库和窗体都设计好了,就差对验证的实现,因为书上没有这方面的,只有网页的,所以想问下winform是如何实现的...
追答
哦,好吧,连接数据库的代码,你可能已经知道,
String strconn="data source=.;initial catalog='数据库名字';user id='“+数据库用户名字+”';password='" + 数据库密码 + "'";
SqlConnection sconn = new SqlConnection(strconn);
sconn.Open();
SqlCommand scmd = new SqlCommand();
scmd.CommandText = “select 。。。。”;//查询语句查询用户名密码,你知道怎么写吧?
如:select * from 表 where uname='"+xx.Text.Trim()+"' and upswd='"+xxx.Text.Trim()+"';
scmd.Connection = sconn;
int rows = scd.ExecuteNonQuery();
现在就判断rows的值为1就验证成功了,等于0就是没有数据,然后就做你要做的了,希望对您有帮助!
展开全部
写一个方法 根据用户名和密码查询 返回bool 或者int
然后通过文本框取到用户名和密码判断。就可以了。
然后通过文本框取到用户名和密码判断。就可以了。
追问
可以给出代码吗?
追答
///
/// 根据用户名和密码查询
///
/// 用户名
/// 密码
/// 受影响的行数
public static Mem_mastModel GetMemByNameAndPwd(string name, string pwd)
{
Mem_mastModel mem = new Mem_mastModel();
string sql = "select * from mem_mast where m_id=@name and m_pwd=@pwd";
SqlParameter[] parm = new SqlParameter[]
{
new SqlParameter("@name",name),
new SqlParameter("@pwd",pwd)
};
DataTable table = DBHelper.ExecuteSelect(sql, parm);
foreach (DataRow rows in table.Rows)
{
mem.Idx = (int)rows["idx"];
mem.M_id =rows["m_id"].ToString();
mem.M_pwd = rows["m_pwd"].ToString();
mem.M_tel = rows["m_tel"].ToString();
mem.M_email = rows["m_email"].ToString();
}
return mem;
}
窗体
Mem_mastModel mem= Mem_mastManager.GetMemByNameAndPwd(txtName.Text, txtPwd.Text);
if (mem.Idx<1)
{
MessageBox.Show("用户名或密码错误", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
this.Visible = false;
LoginForm login = new LoginForm();
login.MemModel = mem;
login.Show();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询