当前位置:  编程技术>.net/c#/asp.net

ASP.NET会员注册登录模块(MD5加密,防止SQL注入,判断是否注册)

    来源: 互联网  发布时间:2014-08-30

    本文导语:  MD5加密,Parameters防止SQL注入:     代码示例: protected void btnLog_Click(object sender, EventArgs e)   {   //获取验证码   string code = txtCode.Text;   //判断用户输入的验证码是否正确   if (Request.Cookies["CheckCode"].Value == code)   {  ...

MD5加密,Parameters防止SQL注入:  
 

代码示例:
protected void btnLog_Click(object sender, EventArgs e)  
{  
//获取验证码  
string code = txtCode.Text;  
//判断用户输入的验证码是否正确  
if (Request.Cookies["CheckCode"].Value == code)  
{  
   //创建数据库连接  
   SqlConnection con = new SqlConnection("server=.;database=db_Register;uid=sa;pwd=102545;");  
  
   //打开数据库连接  
  con.Open();  
 
  //使用MD5加密将用户输入的密码加密  
 string pass = FormsAuthentication.HashPasswordForStoringInConfigFile(txtUserpass.Text, "MD5");  
 
//创建SQL语句,该语句用来查询用户输入的用户名和密码是否正确  
string sqlSel = "select count(*) from tb_userInfo where userName=@name and userPass=@pass";  
 
//创建SqlCommand对象  
SqlCommand com = new SqlCommand(sqlSel, con);  
 
//使用Parameters的add方法添加参数类型,防止SQL注入,Parameters属性传参的方法将非法字符过滤掉.  
com.Parameters.Add(new SqlParameter("name", SqlDbType.VarChar, 20));  
 
//设置Parameters的参数值  
com.Parameters["name"].Value = txtUserName.Text;  
com.Parameters.Add(new SqlParameter("pass", SqlDbType.VarChar, 50));  
com.Parameters["pass"].Value = pass;  
 
//判断ExecuteScalar方法返回的参数是否大于0大于表示登录成功并给出提示  
if (Convert.ToInt32(com.ExecuteScalar()) > 0)

RegisterStartupScript("", "alert(''登录成功!'')");  
 
//清空文本框
txtCode.Text = txtUserName.Text = "";  
}else 
{  
RegisterStartupScript("", "alert(''用户名或密码错误!'')");  

}  
else
{
    RegisterStartupScript("", "alert(''验证码输入错误!'')");  
}
}

设置密码强度:  
 

代码示例:
function passHint()  

var txt=document.getElementById(''txtPass'').value;  
if(txt.length 0)  
{  
blIsName = true;  
}  
else 
{
blIsName = false;  
}  
//返回布尔值变量  
return blIsName;  
}  
protected bool isNameFormar()  
{  
//创建一个布尔型变量并初始化为false;  
bool blNameFormar = false;  
 
//设置正则表达式  
Regex re = new Regex("^\w+$");  
 
//使用Regex对象中的IsMatch方法判断用户名是否满足正则表达式  
if (re.IsMatch(txtName.Text))  
{  
//设置布尔变量为true  
blNameFormar = true;  
 
//设置label控件的颜色  
labUser.ForeColor = System.Drawing.Color.Black;  
}
else 
{  
labUser.ForeColor = System.Drawing.Color.Red;  
blNameFormar = false;  
}  
 
//返回布尔型变量  
return blNameFormar;  
}  
protected void txtName_TextChanged(object sender, EventArgs e)  

//判断用户名是否为空  
if (txtName.Text == "")  
{  
//使用Label控件给出提示  
labIsName.Text = "用户名不能为空";  
 
//设置Label控件的颜色  
labIsName.ForeColor = System.Drawing.Color.Red;  

else 
{  
//调用自定义isNameFormar方法判断用户名是否满足格式要求  
if (isNameFormar())  
{
//调用isName自定义方法判断用户名是否已注册  
if (isName())  
{  
labIsName.Text = "用户名已存在!";  
labIsName.ForeColor = System.Drawing.Color.Red;  
}  
else 
{  
labIsName.Text = "可以注册!";  
labIsName.ForeColor = System.Drawing.Color.Blue;  
}  
}  
else 
{  
  labIsName.Text = "";
} }
}

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请教!出现这个提示是什么原因..是模块版本问题,还是其他问题..http://220.114.102.28/xitong/ProductShow.asp?ArticleID=82
  • ASP.NET之 Ajax相关知识介绍及组件图
  • 我想了解一些关于Java怎样与Asp或Asp.net结合方面在未来发展方向的问题?
  • c#/ASP.NET操作cookie(读写)代码示例
  • asp.net UrlEncode对应asp urlencode的处理方法
  • asp.net实例 定义和使用asp:AccessDataSource
  • win2008 r2 服务器环境配置(FTP/ASP/ASP.Net/PHP)
  • asp与asp.net的session共享
  • 如何在unix下发布asp?
  • 怎么让Apache支持Asp?
  • ??谁能把ASP代码改为JSP的
  • Linux平台下哪种方法实现ASP好?
  • ASP和ASP.Net共享Session解决办法
  • 通过socket和asp打交道
  • 犹豫中……,到底是选择ASP,还是JSP?
  • asp 是否 可用applet标签?帮忙!!
  • asp.net判断数据库表是否存在 asp.net修改表名的方法
  • 新人提问:asp+access的程序在linux下怎么改?
  • 用JAVA APPLET做的交互式网页和ASP、PHP做的相比有什么优势呢?
  • asp.net文字水印功能简单代码
  • asp里面可否使用java写的邮件,给30分.
  • asp与Jsp可否在iis中共存的问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3