简体   繁体   English

php如何找到手机不重复的入口

[英]How to find the duplication entry of mobile no using php

I have created the form with multiple form field.我创建了具有多个表单字段的表单。 Based on selection i show and hide the form field.根据选择,我显示和隐藏表单字段。 How to validate the duplicate entry of mobile no.如何验证手机号重复输入

 $(document).ready(function() { $('#hidden-div').hide(); $("#select_btn").change(function() { toggleFields(); }); }); function toggleFields() { var selectVal = $("#select_btn").val(); if (selectVal <= 5) { $hiddenHtml = $('#hidden-div').clone().html(); $("#refer").html(''); for (var i = 0; i < selectVal; i++) { $("#refer").append($hiddenHtml); } } }
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <html> <head> <title> Demo </title> <meta name="robots" content="noindex, nofollow" /> <form id ="refer-form" name="refer-form" action="validate.php" method="post" > <p>No of Referrer: <select id="select_btn" > <option value="0">--Select--</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> <div id="hidden-div"> <div id="text">Referrer</div> <p>Name: <input type="text" name="name[]" /> </p> <p>Mobile: <input type="text" name="mobile[]" /> </p> <p>Email: <input type="text" name="email[]" /> </p> </div> <div id="refer"> </div> <p align="center"> <input type="submit" value="Submit" /> </p> </form>

For example user select No of referrer option is 2 and then i show the form field 2 time.... I need to avoid duplication of mobile entry....例如,用户选择 No of referrer 选项为 2,然后我显示表单字段 2 次......我需要避免重复移动条目......

If the user enter same mobile no again then i throw the error "please enter the valid mobile no mobile is already enter."如果用户再次输入相同的手机号码,我会抛出错误“请输入有效的手机号码,没有手机号码已经输入。”

Way 1 : Loop through all the mobile number fields and check whether any mobile number is previously occupied or not using $.inArray function of jquery.方式一:循环遍历所有手机号码字段,使用jquery的$.inArray函数检查之前是否有手机号码被占用。

Please check below snippet.请检查以下代码段。

 $(document).ready(function() { $('#hidden-div').hide(); $("#select_btn").change(function() { toggleFields(); }); }); function toggleFields() { var selectVal = $("#select_btn").val(); if (selectVal <= 5) { $hiddenHtml = $('#hidden-div').clone().html(); $("#refer").html(''); for (var i = 0; i < selectVal; i++) { $("#refer").append($hiddenHtml); } } } $("#refer-form").on('submit',function(){ var phoneNumber = []; $("input[name='mobile[]']").each(function(){ var _phoneno = $(this).val(); if($.inArray(_phoneno,phoneNumber) === -1){ if($.trim(_phoneno)){ phoneNumber.push(_phoneno); } }else{ alert("Mobile number is already exist"); return false; } }); $.ajax({ type: "POST", url: "validate.php", data:$(this).serialize(), cache: false, success: function(data){ console.log(data); } }); });
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <html> <head> <title> Demo </title> <meta name="robots" content="noindex, nofollow" /> <form id ="refer-form" name="refer-form" action="validate.php" method="post" > <p>No of Referrer: <select id="select_btn" > <option value="0">--Select--</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> <div id="hidden-div"> <div id="text">Referrer</div> <p>Name: <input type="text" name="name[]" /> </p> <p>Mobile: <input type="text" name="mobile[]" /> </p> <p>Email: <input type="text" name="email[]" /> </p> </div> <div id="refer"> </div> <p align="center"> <input type="submit" value="Submit" /> </p> </form>

Way2: Use .map function to get all mobile number and using hasDuplicates function check array having any duplicate values or not.方式2:使用.map函数获取所有手机号码并使用hasDuplicates函数检查数组是否有任何重复值。

 $(document).ready(function() { $('#hidden-div').hide(); $("#select_btn").change(function() { toggleFields(); }); }); function toggleFields() { var selectVal = $("#select_btn").val(); if (selectVal <= 5) { $hiddenHtml = $('#hidden-div').clone().html(); $("#refer").html(''); for (var i = 0; i < selectVal; i++) { $("#refer").append($hiddenHtml); } } } $("#refer-form").on('submit',function(){ var phoneNumber = []; var phoneNumber = $("input[name='mobile[]']").map(function(){if($.trim($(this).val()))return $(this).val();}).get(); if(hasDuplicates(phoneNumber)){ alert("mobile number is already exist"); return false; }else{ $.ajax({ type: "POST", url: "validate.php", data:$(this).serialize(), cache: false, success: function(data){ console.log(data); } }); } }); function hasDuplicates(array) { var valuesSoFar = Object.create(null); for (var i = 0; i < array.length; ++i) { var value = array[i]; if (value in valuesSoFar) { return true; } valuesSoFar[value] = true; } return false; }
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <html> <head> <title> Demo </title> <meta name="robots" content="noindex, nofollow" /> <form id ="refer-form" name="refer-form" action="validate.php" method="post" > <p>No of Referrer: <select id="select_btn" > <option value="0">--Select--</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> <div id="hidden-div"> <div id="text">Referrer</div> <p>Name: <input type="text" name="name[]" /> </p> <p>Mobile: <input type="text" name="mobile[]" /> </p> <p>Email: <input type="text" name="email[]" /> </p> </div> <div id="refer"> </div> <p align="center"> <input type="submit" value="Submit" /> </p> </form>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM