Ajax 验证在 html 元素内复制 html 页面

我使用 Ajax 进行 PHP 用户名验证,将我的 html 页面复制到 html div(用于显示 ajax 错误)元素内。我尝试了一些解决方案并谷歌搜索但找不到其他解决方案。也许问题出在 $_POST 上,但我也在 php 中将它们分开(所有输入验证)。


这是 PHP 代码


<?php 


if(isset($_POST['username'])){

    //username validation

    $username = $_POST['username'];


    if (! $user->isValidUsername($username)){

        $infoun[] = 'Your username has at least 6 alphanumeric characters';

    } else {

        $stmt = $db->prepare('SELECT username FROM members WHERE username = :username');

        $stmt->execute(array(':username' => $username));

        $row = $stmt->fetch(PDO::FETCH_ASSOC);


        if (! empty($row['username'])){

            $errorun[] = 'This username is already in use';

        }

    }

}



if(isset($_POST['fullname'])){

    //fullname validation

    $fullname = $_POST['fullname'];


    if (! $user->isValidFullname($fullname)){

        $infofn[] = 'Your name must be alphabetical characters';

    }   

}


if(isset($_POST['password'])){

    if (strlen($_POST['password']) < 6){

        $warningpw[] = 'Your password must be at least 6 characters long';

    }   

}


if(isset($_POST['email'])){

    //email validation

    $email = htmlspecialchars_decode($_POST['email'], ENT_QUOTES);

    if (! filter_var($email, FILTER_VALIDATE_EMAIL)){

        $warningm[] = 'Please enter a valid email address';

    } else {

        $stmt = $db->prepare('SELECT email FROM members WHERE email = :email');

        $stmt->execute(array(':email' => $email));

        $row = $stmt->fetch(PDO::FETCH_ASSOC);


        if (! empty($row['email'])){

            $errorm[] = 'This email is already in use';

        }

    }

}


蛊毒传说
浏览 111回答 1
1回答

ITMISS

PHP 文件中的唯一代码应该位于标签内<?php ?>。您需要将 PHP 代码分离到另一个文件中。
打开App,查看更多内容
随时随地看视频慕课网APP