如何验证用户输入的用户名和密码是否与数据库中的相符,我弄了好长时间都提示有错误。 你可能数据库设计的是CHAR不是VARCHAR,你设定CHAR长度为20,但你的密码为6位的话,数据库会给你补14个空格! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果用TextBox输入的话,别忘了加.Trim() 什么数据库,要验证你的用户和密码的正确性,就必须先保证你的sql的正确性,调试通了在加到程序中 if(Text_name.Text=="")error.Text="请输入用户名和口令!";//判断,无输入时给出提示else{ try { if (Conn.State.ToString()=="Closed")//如果数据库未打开,则打开数据库 Conn.Open(); } catch { error.Text="数据库连接失败!请与管理员联系!!!";//报错 return; } login.SelectCommand.Parameters.Clear();//初始化适配器 login.SelectCommand.Parameters.Add("name",Text_name.Text.Trim());//以用户名为参数,执行查询 System.Data.OleDb.OleDbDataReader Dr_login;//定义临时变量 Dr_login=login.SelectCommand.ExecuteReader();//读取用户信息 if(Dr_login.Read()) { if(Dr_login.GetString(0).Trim()==Text_pass.Text) { //如果用户名密码皆对,则对Session附值 Session["User_Right"] = Convert.ToInt32(Dr_login.GetValue(1)); Session["User_Id"] = Dr_login.GetValue(2).ToString(); Session["User_Name"] = Dr_login.GetString(3).Trim(); Session["User_Unit"] = Dr_login.GetString(4).Trim(); Session["User_Depart"]= Dr_login.GetString(5).Trim(); Session["User_Num"] = Dr_login.GetString(6).Trim(); Session["User_BH"] = Text_name.Text.Trim(); error.Text="";//报错区域清空。 Session["flag"] = "2";//表示2还没有接班 //======写入在线信息========Application.Lock();Application["online"]=System.Convert.ToInt32(Application["online"].ToString())+1;Application["username"]+=Session["User_Name"].ToString();Application["username"]+="<br>";Application.UnLock(); //========================== //返回首页 Response.Redirect("Main.aspx"); } else error.Text="密码错误!!!请重新输入!";//判断,密码错误 } else error.Text="没有这个用户!!!请重新输入!";//判断,无此用户 login.Close();//关闭临时变量 Conn.Close(); //断开数据库联接} CREATE PROCEDURE Verrifypwd( @username Varchar(20), @password Varchar(20))AS DECLARE @founduser Varchar(20) Select @founduser = username From usertable WHERE username = @username AND userpwd = @password IF @founduser IS NOT NULL Return 0 ELSE IF Exists( SELECT username From usertable Where username = @username ) Return 2 Else Return 1 fileupload上传多个文件。。。。。。。。。 急急急 不知道代码怎么写 <?xml namespace="" prefix="asp" ?> in .NET 2005 一个困了我好几天的问题 为何在ASP.NET中将数组赋值给Excel工作表的单元格上不成功? 打开文件的问题 问一下这个AJAX是什么东西 求datagrid中行上下移动的代码 如何显示树型结构的DataGrid 希望大家来讨论```一个ide环境使用的问题 HtmlSelect控件的ServerChange事件问题 请问怎么实现自动提醒功能?高分相赠!
else
{
try
{
if (Conn.State.ToString()=="Closed")//如果数据库未打开,则打开数据库
Conn.Open();
}
catch
{
error.Text="数据库连接失败!请与管理员联系!!!";//报错
return;
} login.SelectCommand.Parameters.Clear();//初始化适配器
login.SelectCommand.Parameters.Add("name",Text_name.Text.Trim());//以用户名为参数,执行查询
System.Data.OleDb.OleDbDataReader Dr_login;//定义临时变量
Dr_login=login.SelectCommand.ExecuteReader();//读取用户信息 if(Dr_login.Read())
{
if(Dr_login.GetString(0).Trim()==Text_pass.Text)
{
//如果用户名密码皆对,则对Session附值
Session["User_Right"] = Convert.ToInt32(Dr_login.GetValue(1));
Session["User_Id"] = Dr_login.GetValue(2).ToString();
Session["User_Name"] = Dr_login.GetString(3).Trim();
Session["User_Unit"] = Dr_login.GetString(4).Trim();
Session["User_Depart"]= Dr_login.GetString(5).Trim();
Session["User_Num"] = Dr_login.GetString(6).Trim();
Session["User_BH"] = Text_name.Text.Trim();
error.Text="";//报错区域清空。
Session["flag"] = "2";//表示2还没有接班 //======写入在线信息========
Application.Lock();
Application["online"]=System.Convert.ToInt32(Application["online"].ToString())+1;Application["username"]+=Session["User_Name"].ToString();
Application["username"]+="<br>";
Application.UnLock();
//========================== //返回首页
Response.Redirect("Main.aspx");
}
else
error.Text="密码错误!!!请重新输入!";//判断,密码错误
}
else
error.Text="没有这个用户!!!请重新输入!";//判断,无此用户
login.Close();//关闭临时变量 Conn.Close(); //断开数据库联接
}
(
@username Varchar(20),
@password Varchar(20)
)
AS
DECLARE @founduser Varchar(20) Select @founduser = username
From usertable
WHERE username = @username
AND userpwd = @password IF @founduser IS NOT NULL
Return 0
ELSE
IF Exists( SELECT username From usertable Where username = @username )
Return 2
Else
Return 1