使用PHP进行JavaScript验证

使用PHP进行JavaScript验证,javascript,php,html,Javascript,Php,Html,显然那是不对的,但我不知道怎么做 我知道使用php进行验证是一种更符合逻辑的方法,但我需要演示JavaScript的使用。您不需要这样做。验证表单后,它将被发送到login.php 你可以看到这个问题 还有,有很多图书馆可以帮助你 你所写的应该完全符合你的要求。但是,请记住,您不能依赖实际运行的JavaScript,因为可以从其他位置发布到此页面。但是对于一个简单的解决方案,这应该做到。如果,onsubmit在返回true并继续表单提交时已经运行了,但前面没有错误。问题是,无论JavaScrip

显然那是不对的,但我不知道怎么做


我知道使用php进行验证是一种更符合逻辑的方法,但我需要演示JavaScript的使用。

您不需要这样做。验证表单后,它将被发送到login.php

你可以看到这个问题

还有,有很多图书馆可以帮助你

你所写的应该完全符合你的要求。但是,请记住,您不能依赖实际运行的JavaScript,因为可以从其他位置发布到此页面。但是对于一个简单的解决方案,这应该做到。如果,onsubmit在返回true并继续表单提交时已经运行了,但前面没有错误。问题是,无论JavaScript返回的值是true还是false,if语句的内容都会运行。我发现,由于Google Chrome中的缓存,它无法正常工作。无论如何谢谢你
<?php
if (isset($_POST['submit']) ) {
//send to database
}
?>

<!DOCTYPE html>
<html lang="en">

<head>
    <script>
    function validateForm() {
        var usernameentry = document.forms["registrationform"]["username2"].value;
        var passwordentry = document.forms["registrationform"]["password2"].value;
        var nameentry = document.forms["registrationform"]["password2"].value;

        var emailentry = document.forms["registrationform"]["email"].value;
        var atpos = emailentry.indexOf("@");
        var dotpos = emailentry.lastIndexOf(".");



        if (usernameentry.length < 3  ||  username.length > 20){
            alert("Username must be inbetween 4 and 20 characters");
            return false;
        }

        else if (passwordentry.length < 3  ||  password.length > 20){
            alert("Password must be inbetween 4 and 20 characters");
            return false;
        }

        else if (nameentry.length < 3  ||  name.length > 45){
            alert("Name must be inbetween 4 and 45 characters");
            return false;
        }


        else if (atpos<1 || dotpos<atpos+2 || dotpos+2>=emailentry.length  || emailentry.length > 154) {
            alert("Not a valid e-mail address");
            return false;
        }

        else
        {
            return true;
        }
    }
    </script>
</head>

<body>  
    <form name="registrationform" method="post" action="login.php" onsubmit="return validateForm();">

    Name: <input type="text" name="name"/>
    <br/>
    <br/>
    Email: <input type="text" name="email"/>
    <br/>
    <br/>
    Username: <input type="text" name="username2"/>
    <br/>
    <br/>
    Password: <input type="password" name="password2"/>
    <br/>
    <br/>
    <input type = "submit" name = "submit" value = "submit" />
    <br/>
    <br/>
    </form>
</body>
if (isset($_POST['submit']) && onsubmit == true)