-2

我的代码有多个问题。我已经写了一个带有验证的用户注册表单,但是我需要帮助我写什么才能将它保存在数据库中,如果我遗漏了任何东西。截至目前,它不起作用。当我单击注册时,它只是刷新页面。

我很感激任何帮助,谢谢。

<!DOCTYPE html>
<html lang="en">
<head>
<SCRIPT language="JavaScript"> 

                function validateRegistrationForm(){
            if(!validateEmailField()) // Invalid email format
            return false;
            if(!validatePasswordField()) // Invalid password length
            return false;
            if(validateUserNameField()) // invalide characters in email
        return false;
}

            function validateEmailField(){
            var x=document.getElementById("email").value;
            var atpos=x.indexOf("@");
            var dotpos=x.lastIndexOf(".");
            if (atpos<1 || dotpos<atpos+2 || dotpos+2>=x.length)
{
            errorPopup("Not a valid e-mail address");
            return false;
}
    if(email==x) //If the old email is equal to the current then perform no check for uniqueness. On the server side the email portion will be ignored.
        return true;

    return isEmailUnique(); // return true if the email is unique
}
</script>


</head>

<body class="nobg loginPage">

    <header>
    </header>
    <div id="content">
        <div class="ic"></div>
        <div class="inner">
            <div class="container_12">
                <div class="wrapper">
                    <div class="grid_12">
                    </div>
                </div>
                <div class="wrapper">
                    <div class="grid_12">
                        <h2 class="h-pad1">Open an Account with Us</h2>
                        <form action="" id="validate" class="form" method="POST">
            <fieldset>
                <div class="formRow">
                    <label for="login">Username:</label>
                    <div class="loginInput"><input type="text" name="username" class="validate[required]" id="username" maxlength="15"/></div>
                    <div class="clear"></div>
                </div>

                <div class="formRow">
                    <label for="pass">Password:</label>
                    <div class="loginInput"><input type="password" name="password" class="validate[required]" id="pass" /></div>
                    <div class="clear"></div>
                </div>

                <div class="formRow">
                    <label for="pass">Repeat Password:</label>
                    <div class="loginInput"><input type="password" name="rpassword" class="validate[required]" id="rpass" /></div>
                    <div class="clear"></div>
                </div>

                <div class="formRow">
                    <label for="pass">Email:</label>
                    <div class="loginInput"><input type="text" name="email" class="validate[required]" id="email" /></div>
                    <div class="clear"></div>
                </div>

                <div class="formRow5">
                <script type="text/javascript" src="http://www.google.com/recaptcha/api/challenge?k=6Lfz39kSAAAAABY7fpEs0x1ZzvcFSP-gClbe8XYb"></script>
                <noscript>
                <iframe src="http://www.google.com/recaptcha/api/noscript?k=6Lfz39kSAAAAABY7fpEs0x1ZzvcFSP-gClbe8XYb" height="300" width="500" frameborder="0"></iframe><br/>
                <textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
                <input type="hidden" name="recaptcha_response_field" value="manual_challenge"/>
                </noscript> </div>
                <div class="loginControl">
                    <input type="submit" value="Register" class="dblueB logMeIn" name="registerBtn"/>
                    <div class="clear"></div>
                </div>
            </fieldset>
        </form>
                            </li>
                        </ul>
                    </div>
                </div>
            </div>          
        </div>
    </div>
    <footer>
        </div>
    </footer>
</body>
</html>
4

3 回答 3

1

据我所知 - 您没有任何将表单提交与您编写的验证代码相关联的东西。validateRegistrationForm()当您提交表单时,您的函数是否被调用?

至于您的功能 -true如果表单元素有效,您将想要返回,false如果它们不是。返回false将取消表单的提交。

于 2013-05-01T22:37:51.123 回答
1

在大多数情况下,您不能使用 JavaScript 写入数据库,因为 JS 是客户端代码,而数据库往往位于服务器上。在这种情况下,您需要使用服务器端语言来执行此操作(如 .NET、PHP、Java 等)。如果你能说出你想写入什么数据库以及你正在使用什么服务器语言(如果你已经在使用的话),你可能会得到更详细的答案。

于 2013-05-01T22:38:24.560 回答
0

在您单击注册按钮之前,有一个 javascript 错误...

第 14 行第 1 列:“Uncaught SyntaxError: Unexpected token 。”

于 2013-05-01T22:42:17.683 回答