Въпрос за регистрации и AJAX

amgcompany

Registered
Здравейте,да започна с това че имам форма за регистрация и имам един фаийл chek.php.Предполагам всички сте виждали когато се регистрираш в някой сайтове като си напишеш пот.име и като мръднеш на следващото поле ти се появява дали името е свободно или не,и след това за паролата,за имейа и т.н.Това за пот.име го направих,но не успях да направя и за другите.В моя случай имам само $username и $name.И сам си направил проверката за двете променливи но мисля че нещо ми куца в JavaScripta(използвам jQuery).Та основния ми проблем е че когато си напиша името и като мръдна да напиша името(не пот.име) и на мястото където искам да ми изкарва само за пот.име резултата то ми изкарва и за името резултата и ми изкарва същото съобщение на мястото за резултата от името(още преди да съм кликнал на него) .Също така на мястото където искам да ми изкарва резултата само за името ми изкарва и двата резултата.Мисля че ще мога да си реша проблема ако създам още един AJAX файл не целта ми е да не го правя,само от един файл искам да ми прави проверката за всичко .Не знам дали ме разбрахте мисля,че доста зле го обясних но се надявам от кода да ви стане по ясно.

Формата за регистрация:
HTML:
<div id="registerform">
					<form method="post">
					Потребителско име:<Input type="text" name="username" value="<?PHP if(isset($username)) { print $username; } ?>" id="username"/><span id="userresult"></span><br/>
					Парола:<Input type="password" name="password"/><br/>
					Повтори паролата:<Input type="password" name="password2"/><br/>
					Име и фамилия:<Input type="text" name="name" id="name" /><br/><span id="nameresult"></span>
					<Input type="submit" name="reg" value="Pегистрирай се!"/>
					</form>
				</div>

JavaScript:
[js]
<script type="text/javascript">
$(function()
{
$("#userresult").hide();
$("#nameresult").hide();
$("#username").blur(function()
{
$.post("chek.php",
{
username : $("#username").val(),
name : $("#name").val()
},function(response)
{
$("#userresult").fadeOut("slow");
$("#userresult").html(response);
$("#userresult").fadeIn("slow");

$("#nameresult").fadeOut("slow");
$("#nameresult").html(response);
$("#nameresult").fadeIn("slow");
});

});

});
</script>
[/js]

AJAX (chek.php):
PHP:
<?php
	require "config.php";
	$username = addslashes($_POST['username']);
	$name = addslashes($_POST['name']);
	$q = mysql_query("SELECT username FROM users WHERE username = '$username' LIMIT 1") or die (mysql_error());
	if(strlen($username) < 4 )
		{
			print "Пoтребителското име е кратко";
		}
	else
		{
			if(mysql_num_rows($q) > 0 )
				{
					print "Пoтребителското име е заето";
				}
			else
				{
					print "Потребителското име е свободно";
				}
		}
		
	if(strlen($name)<5)
		{
			print "Името е много кратко";
		}
	else
		{
			print "Добре е :D";
		}
?>
 

Back
Горе