Есть следующий скрипт регистрации, который проверяет доступность логина и эмейла. Если их в базе нет, то появляется надпись на зеленом фоне, а если есть, то на красном фоне. Только вот до сего момента скрипт работал, а теперь он постоянно выполняет блок else, то есть тот, где логин свободен. Независимо от того, свободный или занятый логин я ввожу.
$(document).ready(function()
{
$("#login").blur(function()
{
if ($("#login").val().length > 0 )
{
$("#msgbox").removeClass().addClass('messagebox').text('Проверка...').fadeIn("slow");
$.post("/copyright/php/user_availability.php",{ user_name:$(this).val() }, function(data)
{
if(data=='no')
{
$("#msgbox").fadeTo(200,0.1,function()
{
$(this).html('Логин занят').addClass('messageboxerror').fadeTo(900,1);
});
}
else
{
$("#msgbox").fadeTo(200,0.1,function()
{
$(this).html('Логин свободен').addClass('messageboxok').fadeTo(900,1);
});
}
});
}
else
{
$("#msgbox").fadeOut(200,function()
{
alert(data);
$(this).html('Логин свободен').removeClass('messageboxok');
});
}
});
$("#email").blur(function()
{
var pattern = /^([a-z0-9_\.-])+@[a-z0-9-]+\.([a-z]{2,4}\.)?[a-z]{2,4}$/i;
if ($("#email").val().length > 0 && pattern.test($(this).val()))
{
$("#msgbox_email").removeClass().addClass('messagebox').text('Проверка...').fadeIn("slow");
$.post("php/email_availability.php",{ email_name:$(this).val() } ,function(data)
{
if(data=='no')
{
$("#msgbox_email").fadeTo(200,0.1,function()
{
$(this).html('E-mail занят').addClass('messageboxerror').fadeTo(900,1);
});
$('input[name=reg_action').attr('disabled',true);
}
else
{
$("#msgbox_email").fadeTo(200,0.1,function()
{
$(this).html('E-mail свободен').addClass('messageboxok').fadeTo(900,1);
});
$('input[name=reg_action').attr('disabled',false);
}
});
}
else {
$("#msgbox_email").fadeOut(200,function()
{
$(this).html('E-mail свободен').removeClass('messageboxok');
});
}
});
});
$dbhost = "localhost"; // Хост
$dbuser = "root"; // Имя пользователя
$dbname = "copyright"; // Имя базы данных
// Подключаемся к mysql серверу
$link = mysql_connect($dbhost, $dbuser);
mysql_set_charset("utf8");
mysql_select_db($dbname, $link);
$query = "SELECT * FROM users";
$result = mysql_query($query, $link);
// Цикл
while($row = mysql_fetch_array($result)) {
$existing_users[$row['log']] = $row['login'];
}
$user_name=$_POST['user_name'];
if (in_array($user_name, $existing_users))
{
//юзер недоступен
echo "no";
}
else
{
//доступен
echo "yes";
}
mysql_close($link);
php проверку e-mail не включал сюда, т.к. по аналогии. В чем может быть ошибка?