【问题标题】:foreach loop for live form validation用于实时表单验证的 foreach 循环
【发布时间】:2011-08-11 04:59:43
【问题描述】:

我正在尝试使用 jQuery 和 PHP 验证表单,该表单将检查是否: a)输入有效(有效的电子邮件等) b) 用户名​​或电子邮件地址已经存在

这是 register.php 页面上的 JavaScript 代码:

<script language="javascript">
    $(document).ready(function()
{
    $("#wl-btn").click(function()
    {
    $("#msgbox").removeClass().addClass('messagebox').html('<div class="msg-info"> Validating form...</div>').fadeIn(1000);
    $.post("check_details.php",{ username:$('#wl-username').val(),password:$('#wl-password').val(),password2:$('#wl-password2').val(),email:$('#wl-email').val(),type:$('#wl-type').val(),rand:Math.random() } ,function(data)
    {
//////////// THIS IS THE CODE THAT I NEED TO ALTER TO CATER FOR CHECKING THE USERNAME AND EMAIL ADDRESS
        if(data=='userexists')
        {
        $("#msgbox").fadeTo(200,0.1,function()
        { 
            $(this).html('<div class="msg-error">That username has been taken! Please try another username.</div>').addClass('messageboxerror').fadeTo(900,1); 
        });
                    $("#wl-username").fadeTo(200,0.1,function()
                    {
                        $(this).addClass('input-error tiptip-bottom').fadeTo(900,1);
                    });
                    $("#wl-username-text").fadeTo(200,0.1,function()
                    {
                       $(this).text('Please choose a different username!').addClass('msg-form-error').fadeTo(900,1); 
                    });
////////////////////////////////////////
                } else if(data=='yes'){
                    $("#msgbox").fadeTo(200,0.1,function()
        { 
            $(this).html('<div class="msg-ok">Registration successful! Please check your email inbox for instructions on how to activate your account...</div>').addClass('messageboxok').fadeTo(900,1); 
        });
        } else {
        $("#msgbox").fadeTo(200,0.1,function()
        { 
            $(this).html('<div class="msg-error">Generic form error message.</div>').addClass('messageboxerror').fadeTo(900,1);
        });     
        }           
    });
    return false;
    });
});
</script>

如您所见,它正在调用 check_details.php 并将 POST 值传递给该脚本。目前我有这个sn-p的代码来检查用户是否存在:

<?php

$query = mysql_query("SELECT * FROM users WHERE username='$username'");
$count = mysql_num_rows($query);
if ($count > 0) {
    echo "userexists";
}

?>

我需要找到一种方法来验证用户输入并检查数据库中是否已经存在用户名和电子邮件地址。

如果用户输入的格式不正确或用户名/电子邮件地址存在,那么我需要 JavaScript 代码来添加适当的错误类和消息(如上面 JS 代码的第一部分所示)。

【问题讨论】:

    标签: php javascript jquery


    【解决方案1】:

    您可以使用 json 进行服务器端验证(例如用户名/电子邮件 ID 是否已存在)。它是最好的解决方案。您也可以查看此线程。

    What is JSON and why would I use it?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-22
      相关资源
      最近更新 更多