ASP.NET会员注册登录模块(MD5加密,Parameters防止SQL注入,判断是否注册)_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > ASP.NET会员注册登录模块(MD5加密,Parameters防止SQL注入,判断是否注册)

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

 2013/9/14 15:46:18  漂移青春  博客园  我要评论(0)
  • 摘要:MD5加密,Parameters防止SQL注入:protectedvoidbtnLog_Click(objectsender,EventArgse){//获取验证码stringcode=txtCode.Text;//判断用户输入的验证码是否正确if(Request.Cookies["CheckCode"].Value==code){//创建数据库连接SqlConnectioncon=newSqlConnection("server=.;database=db_Register;uid=sa
  • 标签:.net ASP.NET net SQL SQL注入
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("""<script>alert('登录成功!')</script>");                 //清空文本框                 txtCode.Text = txtUserName.Text = "";             }             else             {                 RegisterStartupScript("""<script>alert('用户名或密码错误!')</script>");             }         }         else         {             RegisterStartupScript("""<script>alert('验证码输入错误!')</script>");         }         }   设置密码强度: function passHint()     {         var txt=document.getElementById('txtPass').value;         if(txt.length<6)         {             document.all("tab").rows[0].cells[1].bgColor="red";             document.all("tab").rows[0].cells[2].bgColor="";         }else         {         document.all("tab").rows[0].cells[2].bgColor="red";                 document.all("tab").rows[0].cells[1].bgColor="";         }              }

<table id="tab" border="0" cellpadding="0" cellspacing="0" style="width182px">     <tr>         <td style="width276px">             <span style="font-size10pt">密码强度:</span></td>         <td id="r" style="width100px">             <asp:Label ID="labEbb" runat="server" Text="弱" Width="18px" Font-Size="12px"></asp:Label></td>         <td style="width92px">             <asp:Label ID="labStrong" runat="server" Text="强" Width="18px" Font-Size="12px"></asp:Label></td>         <td style="width106px">             </td>     </tr> </table>     判断是否注册: 前台代码: <asp:UpdatePanel ID="UpdatePanel1" runat="server">     <ContentTemplate>         <table border="0" cellpadding="0" cellspacing="0" style="width477pxheight48px;">             <tr>                 <td style="width88pxheight24pxtext-alignright">                     <span style="font-size10pt">会 员 名: </span>                 </td>                 <td style="height24pxtext-alignleftwidth509px;" colspan="2">                     <asp:TextBox onFocus="tName();" ID="txtName" runat="server" Width="89px" AutoPostBack="True"                         OnTextChanged="txtName_TextChanged"></asp:TextBox><span style="color#ff0000">*</span><asp:RequiredFieldValidator                             ID="rfvName" runat="server" ErrorMessage="用户名不能为空" Width="1px"                             ControlToValidate="txtName">*</asp:RequiredFieldValidator>                     <asp:Label ID="labUser" runat="server" Text="只能输入数字、字母、下划线" Width="159px" Font-Size="12px"></asp:Label>                     <asp:Label ID="labIsName" runat="server" Font-Size="12px"></asp:Label></td>             </tr>         </table>     </ContentTemplate> </asp:UpdatePanel> 后台代码:     protected bool isName()     {         //创建一个布尔型变量并初始化为false;         bool blIsName = false;         //创建SQL语句,该语句用来判断用户名是否存在         string sqlSel = "select count(*) from tb_userInfo where userName='" + txtName.Text + "' ";         //创建数据库连接         SqlConnection con = new SqlConnection("server=.;database=db_Register;uid=sa;pwd=102545;");         //打开数据库连接         con.Open();         //创建SqlCommand对象         SqlCommand com = new SqlCommand(sqlSel, con);         //判断ExecuteScalar方法返回的参数是否大于0,大于表示用户名已存在         if (Convert.ToInt32(com.ExecuteScalar()) > 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 = "";             }         }       }  
发表评论
用户名: 匿名