[right][font="tahoma"]چطور میشه دیتا ریدر رو به عنوان مقدار برگشتی یک متد کلاس قرار داد؟ به نحوی که بشود در ویو فراخوانی کرد[/font][/right]
[right][font="tahoma"]چطور میشه دیتا ریدر رو به عنوان مقدار برگشتی یک متد کلاس قرار داد؟ به نحوی که بشود در ویو فراخوانی کرد[/font][/right]
[right][font="Tahoma"]:کد مدل به این شکل هستش[/font][/right]
public function FetchUsers()
{
$connection = new CDbConnection('mysql:localhost','root','','charset=utf8');
$connection->active=true;
$sql = "select * from mysite.tbl_users";
$dataReader = $connection->createCommand($sql)->query();;
$dataReader->bindColumn('name',$this->name);
$dataReader->bindColumn('family',$this->family);
$dataReader->bindColumn('country',$this->country);
$dataReader->bindColumn('email',$this->email);
$dataReader->bindColumn('summary',$this->summary);
$result = $dataReader->queryAll();
return $result;
}
[right][font="Tahoma"]:کد کنترلر به این شکل[/font][/right]
public function actionIndex()
{
$model = new RegisterForm;
$result = $model->FetchUsers();
foreach ($result as $row)
{
echo $row["name"];
}
//$this->render('users',array('result'=>$result));
}
[right][font="Tahoma"]:موقع اجرای اکشن ایندکس خطا میده[/font][/right]
Invalid argument supplied for foreach()
[right][font="Tahoma"]چطور دیتا ریدر رو به ویو انتفال میدید؟[/font][/right]
[right]سلام این خطا نشون میده از طرف مدل هیچ آرایه ای به سمت کنترل نیومده
یه نکته
echo $row["name"];
در قسمت کنترلر به چه صورت می خواین اسم رو چاپ کنید؟
[/right]
مشکل حل شده. ممنون