ASP.NET中把控件中的数据与数据库中的数据作比较
请问在ASP.NET中如何把控数据件与数据库中的数据作比较啊。例如我想用数据库中的[XH]这一字段做用户名,[MIMA]这一字段做密码。当我在ASP.NET中有两个文本框...
请问在ASP.NET中如何把控数据件与数据库中的数据作比较啊。例如我想用数据库中的[XH]这一字段做用户名,[MIMA]这一字段做密码。当我在ASP.NET中有两个文本框,当这两个文本框一个文本框内容等于[XH]这一字段里的某条数据,另一个文本框文本等于[MIMA]这一字段里面的某条数据时,就能进行登录。否则登录失败,应该怎么写啊 谢谢大家啊。
展开
5个回答
展开全部
protected void Button1_Click(object sender, EventArgs e)//提交按钮事件
{
//创建数据适配器对象
SqlDataAdapter da = new SqlDataAdapter();
//创建连接对象
SqlConnection conn = new SqlConnection();
conn.ConnectionString = ConfigurationManager.ConnectionStrings["你的连接"].ConnectionString;
//创建命令对象
SqlCommand selCmd = new SqlCommand();
selCmd.CommandText = " SELECT * FROM 用户表 WHERE ([name] = @name AND [password]=@password)";
selCmd.Connection = conn;
selCmd.Parameters.Add(new SqlParameter("@name", SqlDbType.Char, 80));
selCmd.Parameters["@name"].Value = TextName.Text;
selCmd.Parameters.Add(new SqlParameter("@password", SqlDbType.Char, 80));
selCmd.Parameters["@password"].Value = TextPass.Text;
//设置数据适配器的selectcommand属性
da.SelectCommand = selCmd;
//创建数据集对象
DataSet data = new DataSet();
//使用数据适配器填充数据集
da.Fill(data, "你的用户表");
if (data.Tables[0].Rows.Count > 0)
{
response.write"登录成功";
}
else
{
response.write"用户名或密码错误";
}
{
//创建数据适配器对象
SqlDataAdapter da = new SqlDataAdapter();
//创建连接对象
SqlConnection conn = new SqlConnection();
conn.ConnectionString = ConfigurationManager.ConnectionStrings["你的连接"].ConnectionString;
//创建命令对象
SqlCommand selCmd = new SqlCommand();
selCmd.CommandText = " SELECT * FROM 用户表 WHERE ([name] = @name AND [password]=@password)";
selCmd.Connection = conn;
selCmd.Parameters.Add(new SqlParameter("@name", SqlDbType.Char, 80));
selCmd.Parameters["@name"].Value = TextName.Text;
selCmd.Parameters.Add(new SqlParameter("@password", SqlDbType.Char, 80));
selCmd.Parameters["@password"].Value = TextPass.Text;
//设置数据适配器的selectcommand属性
da.SelectCommand = selCmd;
//创建数据集对象
DataSet data = new DataSet();
//使用数据适配器填充数据集
da.Fill(data, "你的用户表");
if (data.Tables[0].Rows.Count > 0)
{
response.write"登录成功";
}
else
{
response.write"用户名或密码错误";
}
展开全部
非常简单,使用ADO.NET的COMMAND对象就是了。
输入文本框里的值,然后使用COMMAND对象检索数据库,如果有完全相同的记录,则登录成功。反之则失败。
COMMAND对象怎么用,我想就不用我教你了吧,你把它实例化,都是有智能感知的,全傻瓜式使用。
输入文本框里的值,然后使用COMMAND对象检索数据库,如果有完全相同的记录,则登录成功。反之则失败。
COMMAND对象怎么用,我想就不用我教你了吧,你把它实例化,都是有智能感知的,全傻瓜式使用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先,我按我对你所提的问题自己这样理解:
比如由一个用户表:User
里面有连个字段:loginId(用户名),loginPwd(用户密码)
要决定你的问题,得先写个根据loingId返回一个User对象的方法
public static User GetUserByLoginId(string loginId)
{
string connectionString = @"";
string sql = "Select * from User where LoginId ='"+loginId+"'";
SqlConnection conn = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand(sql,conn);
using (SqlDataReader reader = cmd.ExecuteReader())
{
if (reader.Read())
{
User user = new User();
user.loginId = (string)reader["loginId"];
user.loginPwd = (string)reader["loginId"];
reader.Close();
return user;
}
else
{
reader.Close();
return null;
}
}
}
接着写一个Login的方法来进行判断啦:
public static bool Login(string loginId,string loginPwd,out User valiuser)
{
User user=GetUserByLoginId(loginId);
if (user == null)
{
//用户不存在
valiuser = null;
return false;
}
else
{
if (user.loginPwd = loginPwd)
{
//用户存在
user = valiuser;
return true;
}
}
}
最后,调用Login方法,将web页面中的loginId(用户名),loginPwd(密码)的Text传入方法中,进行判断:
User user;
if (Login(this.loginId.Text, this.loginPwd.Text, out user) == true)
{
//验证成功可以登录啦
}
else
{
//验证失败不可以等了
}
相信这样就可以解决你的问题啦
o(∩_∩)o...哈哈
比如由一个用户表:User
里面有连个字段:loginId(用户名),loginPwd(用户密码)
要决定你的问题,得先写个根据loingId返回一个User对象的方法
public static User GetUserByLoginId(string loginId)
{
string connectionString = @"";
string sql = "Select * from User where LoginId ='"+loginId+"'";
SqlConnection conn = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand(sql,conn);
using (SqlDataReader reader = cmd.ExecuteReader())
{
if (reader.Read())
{
User user = new User();
user.loginId = (string)reader["loginId"];
user.loginPwd = (string)reader["loginId"];
reader.Close();
return user;
}
else
{
reader.Close();
return null;
}
}
}
接着写一个Login的方法来进行判断啦:
public static bool Login(string loginId,string loginPwd,out User valiuser)
{
User user=GetUserByLoginId(loginId);
if (user == null)
{
//用户不存在
valiuser = null;
return false;
}
else
{
if (user.loginPwd = loginPwd)
{
//用户存在
user = valiuser;
return true;
}
}
}
最后,调用Login方法,将web页面中的loginId(用户名),loginPwd(密码)的Text传入方法中,进行判断:
User user;
if (Login(this.loginId.Text, this.loginPwd.Text, out user) == true)
{
//验证成功可以登录啦
}
else
{
//验证失败不可以等了
}
相信这样就可以解决你的问题啦
o(∩_∩)o...哈哈
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
SELECT COUNT(*)AS count
FROM table --你的表名
WHERE [XH]=用户名文本框内容 AND [MIMA]=密码文本框内容
如果 count==1 则登陆,否则 报错
FROM table --你的表名
WHERE [XH]=用户名文本框内容 AND [MIMA]=密码文本框内容
如果 count==1 则登陆,否则 报错
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select * from 表 where [XH]='"+textbox_XH+"'
依此类推懂吗?
依此类推懂吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询