2016-02-26 112 views
-5

我想检查电子邮件是否已经存在与JQuery。检查电子邮件是否已经存在与JQuery

我有这样的:

contactpersonen_email:{ 
    required:true, 
    email:true 
}, 

和留言本:

contactpersonen_email:{ 
    required: "U heeft geen geldig email adres ingevuld", 
    email: "je email is leeg" 
}, 

用户可以添加更多的联系人。每个联系人都需要一个电子邮件地址。但是不同人的电子邮件地址是不一样的。但要用规则和信息来做到这一点。这是完整的脚本:

rules: { 
             verploegen_form_klantregistratie_Bedrijfsnaam: "required", 
             verploegen_form_klantregistratie_Postcode:{ 
             required:true, 
             maxlength:6 
             }, 

             verploegen_form_klantregistratie_Plaats: "required", 
             contactpersonen_voornaam: "required", 
             contactpersonen_achternaam: "required", 
             contactpersonen_functie:{required:true, maxlength:30}, 

             verploegen_form_klantregistratie_Emailadres_digitale_factuur:{          
             email:true 
             }, 
             verploegen_form_klantregistratie_Telefoon_vast:{ 
             minlength:10, 
             maxlength:10, 
             digits:true 
}, 

             verploegen_form_klantregistratie_Emailadres: { 
              required: true, 
              email: true 
             }, 


             contactpersonen_telefoon:{ 
             minlength:10, 
             maxlength:10, 
             digits:true 
             }, 

             contactpersonen_email:{ 
              required: true, 
              email: true 
             }, 


             verploegen_form_klantregistratie_KvK_nummer:{ 
             required:true, 
             minlength:8, 
             maxlength:8, 
             digits: true 

             }, 
             verploegen_form_klantregistratie_naam_eigenaar: "required", 
             verploegen_form_klantregistratie_Telefoon_mobiel: "required" 
            }, 
             contactpersonen_voornaam:"required", 
             contactpersonen_achternaam:"required", 
             contactpersonen_functie: { 
             required:true, maxlength:30 }, 


             contactpersonen_email:{ 
             required:true, 
             email:true          
             },          

            messages: { 
             verploegen_form_klantregistratie_Bedrijfsnaam: "De bedrijfsnaam is niet ingevuld", 
             verploegen_form_klantregistratie_Postcode: { 
              required: "De postcode is niet gevuld", 
              maxlength:"Postcode kan niet langer dan 6 tekens zijn"  
             }, 


      //if(document.getElementById('contactpersonen_canorder_0').checked) { return true; } else { alert('please agree'); return false; } 

             verploegen_form_klantregistratie_Plaats: "De plaats is niet ingevuld", 
             verploegen_form_klantregistratie_Emailadres: { 
              required: "Je hebt geen email adres ingevuld", 
              email: "Je hebt geen geldig email adres ingevuld" 
             }, 

             verploegen_form_klantregistratie_Emailadres_digitale_factuur:{           
             email: "Geen geldig email adres"     
             }, 
             verploegen_form_klantregistratie_Telefoon_vast:{ 
             digits:"Telefoon nummer bestaat uit 10 cijfers" 
             },    

             contactpersonen_telefoon:{ 
             digits:"Telefoon nummer bestaat enkel uit 10 cijfers" 

             }, 

              contactpersonen_email:{ 
              required: "U heeft geen geldig email adres ingevuld", 
              email: "je email is leeg" 
             }, 

             contactpersonen_voornaam:"U heeft u voornaam niet ingevuld", 
             contactpersonen_achternaam:"U heeft u achternaam niet ingevuld",              

             contactpersonen_functie:{required:"U heeft niks ingevuld", maxlength:"Functie naam mag niet meer dan 30 karakters bevatten"}, 



             verploegen_form_klantregistratie_KvK_nummer:{ 
             required: "Het KVK nummer is niet ingevuld", 
             digits:"KVK nummer bestaat uit 8 nummers" 

}, 
             verploegen_form_klantregistratie_naam_eigenaar: "De naam van de eigenaar is niet ingevuld", 
             verploegen_form_klantregistratie_Telefoon_mobiel: "Het (mobiele) telefoon nummer is niet ingevuld" 
            } 
           }); 

谢谢

尼尔斯。

+0

定义“存在”。 – Biffen

+2

你在问什么?完全不清楚。 –

+0

尽管你没有说明它的位置,但它看起来好像你正在尝试使用jQuery Validate插件。 – Sparky

回答

0

我不确定“存在”是什么意思,有三种可能的方式可以定义“存在”。

  1. 电子邮件地址是有效
  2. 是否有用户使用该数据库中已存在的电子邮件?
  3. 此电子邮件地址是否为“真实”并可以接收电子邮件?

第一个问题可以用JavaScript和Regex来回答。第二个问题需要数据库连接和后端语言(PHP,Python,RoR,ASP.NET等)来检查你的数据库。第三个问题只能通过向该地址发送电子邮件并让他们点击链接来验证其帐户来回答。

  1. 这里是你如何检查电子邮件地址使用是有效的JavaScript中的正则表达式:

function validEmail(email){ 
 
    if(email.length < 6 || email.length > 255) return false; 
 
    return new RegExp(/^[a-zA-Z0-9._-][email protected][a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/).test(email); 
 
}

  • 下面是一个例子在PHP中检查您的数据库以查看该电子邮件地址是否已存在。假设您有一张名为users的表,其中有一个名为email的字段。
  • 以下是您应该运行以查看电子邮件是否存在于数据库中的脚本。对于这个例子,我们称之为“checkEmail.php”。

    <?php 
     
        $email = $_GET['email'] 
     
        $DB = new mysqli("localhost", "dbusername", "dbpassword", "dbname"); 
     
        // Check for connection errors herer 
     
        $email = $DB->real_esacape_string($email); 
     
        $resutls = $DB->query("SELECT `email` FROM `users` WHERE `email` = '{$email}' LIMITT 1"); 
     
        if($results->num_rows == 0) echo "false"; 
     
        else echo "true"; 
     
    ?>

    然后在你的主HTML文件做一个Ajax调用该脚本来检查邮件是否存在:

    function emailExists(email, callback){ 
     
        $.ajax({ 
     
        url: "checkEmail.php", 
     
        data: { 
     
         email: email 
     
        }, 
     
        success: function(response){ 
     
         if(response == "true") 
     
         callback(true); 
     
         else 
     
         callback(false); 
     
        } 
     
        }); 
     
    };

    +0

    我以为我知道你可能会问什么,直到你更新了你的问题,现在我更加不清楚了。现在你已经编辑了你的问题,不要理会这个答案。 –

    相关问题