3

我是 yii 框架的新手。我刚刚创建了一个应用程序,我想根据某些条件从数据库中获取数据,然后在视图中显示它。为此,我在控制器中尝试了一些东西:

    if(isset($_GET['sku']))
    {
              $sku=$_GET['sku'];
          $data=Products::model()->findAll("sku=$sku");
    }
    $this->render('checkout',array(
        'data'=>$data,
    ));

在我看来,我尝试将数据打印为:

打印_r($数据);

我向我展示了一个复杂的数组,但我不想要那个。我想要的是我可以从控制器获取一个数组,其中包括基于某些条件的查询返回的数据,并且在我的视图中使用 foreach 我可以根据我的需要显示它们。

所以请建议我一些从数据库中获取数据的好方法,并可以在我的视图中显示它们。

谢谢 !!

4

2 回答 2

4

在您看来,请使用以下内容:

<?php echo CHtml::encode($data->fieldname); ?>

或者更好的是,使用 Gii 代码生成器来构建你的 CRUD 函数,你会看到几个关于如何构建这些函数的好例子。这是一个非常好的教程的链接:http ://www.yiiframework.com/doc/guide/1.1/en/quickstart.first-app

于 2013-04-28T13:58:23.663 回答
1

尝试使用 DAO 代替 Active Record

$sql = "SELECT * FROM `products` WHERE sku = ".Yii::app()->request->getParam('sku', 0);
$data = Yii::app()->db
        ->createCommand($sql)
        ->queryAll();

$this->render('checkout',array(
    'data'=>$data,
));

您应该db在配置文件中有组件(例如 config/main.php)

http://www.yiiframework.com/doc/guide/1.1/en/database.dao

于 2013-04-28T13:23:56.510 回答