تا اینجا ظاهر کار رو داریم .
حالا باید کاری کنیم که با کلیک روی دکمه check وجود یا عدم وجود نام کاربری در بانک اطلاعاتی برسی شود .

تنها کاری که ما باید انجام بدیم ارسال نام کاربری به سرور و چک اون هست که باید مرحله ارسال رو از طریق جاوااسکریپت و چک اون رو از طریق php انجام بدیم .

برای این کار باید یک مقدماتی رو فراهم کنیم که با هم تک تک کارهای لازم برای انجام این کار رو انجام خواهیم داد.

در این قسمت به نوشتن کدهای سمت کلاینت یا همون کدهای جاوااسکریپت لازم برای ارسال دادها می پردازیم .

برای ایجاد ارتباط باید از پروتکل http استفاده کنیم باید یک شی از نوع xml http request بسازیم که از طریق اون در خواست های خودمون به وسیله ی این پروتکل ارسال و پاسخ های ارسالی رو کنترل کنیم .

به خاطر تفاوت هایی که در مرورگرهای مختلف وجود داره نمیشه از یک روش مشخص برای ساخت این شی استفاده کرد برای همین باید این کار رو به صورت زیر انجام بدیم .

 //AJAX ,اجاکس , ایجکس , اژاکس
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera ۸٫۰+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
//Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}

روش اول ساخت نمونه روشی است که در تمام مرورگر های استاندارد پشتیبانی می شود ولی باز مشکل در ie پیش میاد که مجبوریم در ie ابرای هر کدوم از نسخه ها از یک روش استفاده کنیم .

این مشکل به دلیل این هست که ie این شی رو به صورت اکتیوکس پیاده سازی کرده در حالی که در مرورگرهای معروف دیگه مانند firefox,opera,safari این شی به صورت اشیاء داخلی کتابخانه های جاوااسکریپت پیاده سازی شده .به خاطر همین تعارض مجبوریم کدی که برای ساخت xmlhttprequest استفاده میکنیم شرطی برای ساخت از طریق اکتیوکس و یا اشیاء داخلی جاوااسکریپت داشته باشه .

بعد از تعریف تابعی برای ساخت شی XmlHttpRequest در داخل جاوااسکریپت حالا یک تابع برای ارسال نام کاربری به سرور می سازیم .

اسم تابع رو checkuser میزاریم .

 function checkUser()
{
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
{
alert ("Browser does not support HTTP Request");
return;
}
}