ببینید، شما مثلاً یه چنین کاری میکنید با AJAX :
کد HTML:
<script type="text/javascript">
$(document).ready(function() {
$("#name").keyup(function() {
$.ajax({
type: "post",
url: "<?php echo Yii::app()->createAbsoluteUrl("user/check"); ?>",
data: "name="+$("#name").val(),
success: function(result) {
if(result === "NONE") {
$("#names").html("<a href=\"<?php echo Yii::app()->createUrl("site/register"); ?>\">Register this name</a>");
}
else {
$("#names").html(result);
}
}
});
});
});
</script>
حالا توی کنترلر UserController این اکشن رو اضافه کنید:
public function actionCheck() {
if(!Yii::app()->request->isAjaxRequest || empty($_POST['name'])) {
return;
}
$users = User::model()->findAll('name LIKE :name', array(':name'=>'%' . $_POST['name'] . '%'));
if(!$users) {
echo 'NONE';
}
else {
foreach($users as $user) {
echo '<p>' . CHtml::encode($user->name) . '</p>' . PHP_EOL;
}
}
Yii::app()->end();
}
البته این یک مثال بود و میتونید هرجور نیاز دارین تغییرش بدین. فقط خواستم منطق کار دستتون بیاد.