Неверное поведение проверки подлинности JQuery с удаленным

У меня есть форма регистрации, использующая валидатор jQuery как:

$('reg_form').validate({ ignore:"", rules : { user_name : { required :1, minlength :8, remote :"check_user_name.php" }, password : { required :1, minlength :8, }, firstname : { required :1, }, lastname : { required :1, }, email : { required :1, }, } }); 

Он работал очень хорошо, но проблема удаленная. Он никогда не обнаруживает, что имя пользователя уже находится в БД.

Код в удаленном режиме:

 $uname = $_GET["user_name"]; $UserObj = new User(); echo $UserObj->checkUniqueUser($uname); 

checkUniqueUser () проверяет, есть ли пользователь с тем же именем, он вернет false else true.

Я получил URL-адрес с запроса

 http://project.localhost/check_user_name.php?user_name=admin 

Я горячо связал URL-адрес, и он говорит false, поскольку администратор уже существует в БД, и если я перехожу к чему-то другому, он показывает true (конечно, его нет в БД)

Может кто-нибудь, пожалуйста, помогите мне в этом? Надеюсь, я смог прояснить, что я сделал до сих пор и с какими проблемами сталкиваюсь.

Это моя функция, которая у меня есть в classе User.

 public function checkUniqueUser($username){ $return = true ; global $db ; $db->query("select iduser from user where user_name = '".$this->cleanInput($username)."'"); if($db->numRows() > 0 ){ $return = false ; } return $return ; } 

Поскольку вы хотите получить результат , вам нужно echo true или false из вашей функции, а не return . Технически, некуда return .

См. PHP return и PHP echo .

 public function checkUniqueUser($username){ $return = true ; global $db ; $db->query("select iduser from user where user_name = '".$this->cleanInput($username)."'"); if($db->numRows() > 0 ){ $return = false ; } echo $return ; // echo (output) true or false }