PDA

View Full Version : ajax در codeigniter



tooka123
شنبه 08 تیر 1392, 10:10 صبح
سلام , یه دونه فرم ثبت نام در codeigniter دارم و می خوام از ajax استفاده کنم

برای چک کردن اطلاعات باید آدرس صفحه php که به صورت معمولی نوشته شده را بدهیم یا آدرس یک صفحه ای که در model هست(قسمت url)

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

url='ajax2.php?user='+document.getElementById('use r').value;
//alert(url);
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
......

}

tooka123
شنبه 08 تیر 1392, 12:21 عصر
ببخشید , اون حل شد کد زیر را می ذارم خواهشاً بگید مشکلش چیه

یه textbox دارم با id="user" می خوام با خاصیت onblur چک کنم که این نام کاربری قبلاً ثبت شده یا نه , اگر ثبت شده دور textbox قرمز در غیر این صورت سبز بشه



<input type="text" name="username" id="user" onblur="check()" /> کد جاوا

// JavaScript Document
function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
//Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}

function check()
{

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

url='http://localhost/ci/index.php/form/check/user/'+document.getElementById('user').value;

xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);

}

function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")

{
//alert(xmlHttp.responseText);
if (xmlHttp.responseText=='1')
{
document.getElementById("user").style.border="1px solid #CC0000";
}
else{
document.getElementById("user").style.border="1px solid #00FF00";
}

}
}


کد controller


function check($user)
{
$user=$this->input->get('username');
$this->load->model('data');
$num=$this->data->check_user($user);
if($num == 0)
$num='0';
else
$num='1';

return $num;

}

کد model


function check_user($user)
{
$q=$this->db->select('username')->from('user')->where('username',$this->db->escape($user))->get();
return $q->num_rows();
}