Я использую плагин JQuery Validation, который отлично работает от удаленной проверки на имя пользователя, чтобы быть уникальным.
Сценарий возвращает «true» или «false», который вы увидите из приведенного ниже кода. Но я не уверен, почему он не отображает ошибку … Стоит упомянуть о других ошибках пользователя.
Правила проверки JQuery:
User: { required: true, minlength: 6, remote:{ url: 'scripts/userCheck.php', type: "post" } }
Сообщения о проверке JQuery:
User: { required: "Please Enter a Username", minlength: "Username must be more than 6 characters in Length", remote: "User already exists" }
userCheck.php:
<?php /** * Created by PhpStorm. * User: nathanenglish5 * Date: 30/12/2015 * Time: 09:05 */ include_once "init.php"; include_once "../resources/signup.class.php"; $signup = new signup($DB_con); $return = "false"; $count = 0; if (isset($_Post['User'])) { $uid = $_Post['User']; $sql = "SELECT COUNT(username) FROM username WHERE username = '$uid'"; $count = $signup->dataview($sql); if($signup->dataview($sql)==0){ $return = "true"; } } ?>
Весь класс dataview – это возврат числа.
Любая помощь или руководство были бы замечательными!
Попробуй это:
//Our validation script will go here. $(document).ready(function(){ //validation implementation will go here. $("#form_id").validate({ rules: { user: { required: true, minlength: 6, }, remote: { url: 'scripts/userCheck.php', type: "post" } }, messages: { user: { required: "Please Enter a Username", minlength: "Username must be more than 6 characters in Length", }, remote: { remote: "User already exists" } } }); })
Я прочитал несколько других форумов и обнаружил, что мне нужно повторить результат и изменить userCheck.php ниже:
<?php /** * Created by PhpStorm. * User: nathanenglish5 * Date: 30/12/2015 * Time: 09:05 */ include_once "init.php"; include_once "../resources/signup.class.php"; $signup = new signup($DB_con); $return = "false"; $count = 0; if (isset($_POST['User'])) { $uid = $_POST['User']; $sql = "SELECT COUNT(username) FROM username WHERE username = '$uid'"; $count = $signup->dataview($sql); if($signup->dataview($sql)==0){ $return = "true"; } } echo $return; ?>