我要求我的邮箱不能跟数据库里已有的邮箱名重复,判断语句怎么写!如果重复,就提醒“该邮箱已被注册”

解决方案 »

  1.   

    取数据库select一下,看看是否存在
      

  2.   

    去数据库比对一下
    select * from tb where email=xx
      

  3.   

    1,如果允许刷新。那么
        <asp:TextBox ID="txtEmail" runat="server" AutoPostBack="true" 
            ontextchanged="txtEmail_TextChanged"  ></asp:TextBox>
         protected void txtEmail_TextChanged(object sender, EventArgs e)
            {
                //查询数据库判断是否已经有人注册过了
            }
    2,如果不允许刷新的话就用ajax。如果需要的话,我可以给你一个小例子,ajax的
      

  4.   

    利用ajax 与 正则表达式
      

  5.   


    你给我个例子,谢谢,我是asp.net的
      

  6.   

    1,页面
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
        <title>ASP.NET ajax</title>
         <script type="text/javascript">
             function GetXmlHttpObject() {
                 var xmlHttp = null;
                 try {
                     xmlHttp = new XMLHttpRequest();    // Firefox, Opera 8.0+, Safari
                 }
                 catch (e) {
                     try {
                         xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");   // Internet Explorer
                     }
                     catch (e) {
                         xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
                     }
                 }
                 return xmlHttp;
             };
             function Check() {
                 var id = document.getElementById("id").value;
                 //id为你要检查的数据记录的id
                 var email = document.getElementById("email").value;
               //用户输入的邮箱
                 var xmlHttp = GetXmlHttpObject();
                 //指定回调函数
                 xmlHttp.onreadystatechange = function () {
                     if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
                         var m = xmlHttp.responseText;
                         if (m == "1") {
                             alert("对不起,您输入的邮箱已经被注册了!");
                         }
                     }
                 };
                 //初始化xmlhttprequst
                 xmlHttp.open("POST", "CheckEmail.aspx", true); //CheckEmail.aspx这个是判断邮箱存在的页面
                 //设置头部
                 xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
                 //发送数据
                 var data = "id=" + escape(id)+"&email="+email;
                 xmlHttp.send(data);
             };
         </script>
       
        
    </head>
    <body>
        <form id="form1" runat="server">
        <input type="hidden" id="id"  value="<%=id %>"/>
       <input type="text" id="email" onblur="Check();" />
        </form>
    </body>
    </html>
    2,ajax处理页面。CheckEmail.aspx.cs
     protected void Page_Load(object sender, EventArgs e)
            {
                int id = Convert.ToInt32(Request.Form["id"]);
                string email = Request.Form["email"];
                //然后去数据库进行比较
             //如果不可以注册那么
                Response.Write("1");        }
    注意:CheckEmail.aspx页面上什么都没有哦
    只有这样一个头:
    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CheckEmail.aspx.cs" Inherits="supmusic.softer.CheckEmail" %>
    楼主一定要注意这个地方哦。
      

  7.   

    其实我只需要一个很简单的,我不需要弹出框,我只是需要在别人填写邮箱的时候不可以跟access数据库中已有的邮箱重复,如果重复,显示出一行字就可以了
      

  8.   

    1.先判断你的输入框中格式是不是邮箱类型嘚。
    2.ajax提交输入到服务器端判断这个邮箱在不在数据库中。
    3.提醒
      

  9.   

    ajax和正则表达式  select * from t_user where email=xxxxxxxxxx