Я использую bvalidator (плагин проверки jquery), чтобы проверить, существует ли имя пользователя в базе данных.У них есть пример в их документации.Тем не менее, я понятия не имею, как это работает.Вы можете прочитать больше об этом примере здесь: http://karmela.fsb.hr/~bmauser/bvalidator/documentation.html#serversidevalidation
Я пытался создать свой собственный.Тем не менее, это всегда говорит мне, что имя пользователя уже занято, несмотря ни на что ... Я полный новичок, когда дело доходит до AJAX.Я едва знаю это.Так или иначе, вот что я создал до сих пор ...
index.php (главная страница)
<script type="text/javascript">
$(document).ready(function () {
$('#register').bValidator(optionsRed);
});
function checkUsername(username) {
$.post("checkusername.php", { username: username }, function(data) {
if (data == 0) {
ret = true;
} else {
ret = false;
}
return ret;
});
}
</script>
<input type="text" name="username_register" id="textstyleid" data-bvalidator="checkUsername,required,rangelength[5:20]" data-bvalidator-msg="This username is not valid or already taken."/>
checkusername.php (проверяет, существует ли имя пользователя)
<?php
require '../connect.inc.php';
if (isset($_POST['username'])) {
$username = mysql_real_escape_string($_POST['username']);
if (!empty($username)) {
$username_query = mysql_query("SELECT COUNT(uid) FROM users WHERE username='$username'");
$username_result = mysql_result($username_query, 0);
if ($username_result == 0) {
return 0;
} else if ($username_result == 1) {
return 1;
}
}
}
?>
Редактировать Я заметил ошибку 404.Я исправил это.PHP и AJAX работает.Это дает мне 0 или 1 в зависимости от текста, введенного в предварительном просмотре.Тем не менее, проблема все еще существует.Я думаю, что это из-за этой строки кода.Я не очень понимаю, что это значит.Что такое данные ?:
if (data == 0) {
ret = true;
} else {
ret = false;
}
return ret;