急求!!!!

寂寞很巴黎 2011-04-02 11:22:44
写一个函数,调用用户表,传用户名,密码,返回结果-1,密码错误。0正确,-2用户不再存
...全文
95 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
DL0518 2011-04-02
  • 打赏
  • 举报
回复
定义函数Login(string name,string pwd)验证用户和密码
定义函数Login(string name)验证用户是否存在 bool
if(!Login(name))
{
response.write("用户不存在");//select count(1) form user where uname=''
}
else
{
if(login(name,pwd))//select count(1) from user where uname='' and pwd=''
{登录成功}
else
{
登录失败
}
}
寂寞很巴黎 2011-04-02
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 liujianaemail 的回复:]

public int login(string name ,string pwd)
{
dataset ds = userBll.getList("select * from users where name ='name'" );
if(ds!=null&&ds.tables[0].rows.count>0)
{
if(ds.tab……
[/Quote]
错了
liujianaemail 2011-04-02
  • 打赏
  • 举报
回复
public int login(string name ,string pwd)
{
dataset ds = userBll.getList("select * from users where name ='name'" );
if(ds!=null&&ds.tables[0].rows.count>0)
{
if(ds.table[0].rows[0]["password"] ==pwd)
reutrn 0;
else
return -1
}
else
{
return -2
}
cfvgodot 2011-04-02
  • 打赏
  • 举报
回复
从小师弟的毕业设计里给你翻出来的!
cfvgodot 2011-04-02
  • 打赏
  • 举报
回复

protected void CustomLogin_Login(object sender, EventArgs e)
{
//定义IRET初始值
int iRet = -1;
try
{
//建立ADO连接,并调用VERFIUSER存储过程
SqlCommand cmd = Conn.CreateCommand();

Conn.Open();
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "VerfiUser";
cmd.Parameters.Add("@username", SqlDbType.VarChar).Value = CustomLogin.username;
cmd.Parameters.Add("@password", SqlDbType.VarChar).Value = CustomLogin.password;

//返回存储过程值
SqlParameter paraOut = cmd.Parameters.Add("@RETURN_VALUE",SqlDbType.Int);
paraOut.Direction = ParameterDirection.ReturnValue;
SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
iRet = Convert.ToInt32(cmd.Parameters["@RETURN_VALUE"].Value);

//校验验证码
if (Request.Cookies["CheckCode"] == null)
{
lblErrMsg.Text = "您的浏览器禁用了COOKIES,您必须设置浏览器允许使用COOKIES才能使用本系统!";
lblErrMsg.Visible = true;
return;
}

if (String.Compare(Request.Cookies["CheckCode"].Value, CustomLogin.chkcode.ToString(), true) != 0)
{
lblErrMsg.Text = "验证码错误,请重新输入";
lblErrMsg.Visible = true;
return;
}
//判断返回值
switch (iRet)
{
case 0: //通过验证 重定向页面
while (dr.Read())
{
Session["Logon"] = dr["client_code"].ToString();
Session["user"] = dr["UserName"].ToString();
}
dr.Close();

if (Request.Params["type"] != null)
{
Response.Redirect("Report.aspx?type=" + Request.QueryString["type"].ToString() + "");
}
else
{
if (RequestUrl != "")
{
Response.Redirect("Logon.aspx?RequestUrl=" + RequestUrl);
}
Response.Redirect("Logon.aspx");
}
break;
case 1://密码错误
lblErrMsg.Text = "密码输入错误,请重试";
dr.Close();
break;

case 2://用户名不存在
lblErrMsg.Text = "不存在\"" + CustomLogin.username + "\"的用户!";
dr.Close();
break;
default:
break;
}
}
catch (SqlException ex)
{
lblErrMsg.Text = "SQL语句错误\n" + ex.Message;
}
finally
{
//关闭数据库

Conn.Close();
}
}



CREATE procedure [dbo].[VerfiUser]
(
@username varchar(50),
@password varchar(50)
)
as
declare @strSQL varchar(1000)
set @strSQL='select * from UserTable where UserName='''+@username+''' and PassWord='''+@password+''''
print @strSQL
if exists
(
select C_id from UserTable where UserName=@username
and PassWord=@password
)
begin
exec(@strSQL)
return 0 --验证成功
end
if exists
(
select C_id from UserTable where UserName=@username
)
return 1 --密码错误

return 2 --用户不存在

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧