如何正确实现此Yii / PHP / SQL代码

时间:2012-11-13 13:01:49

标签: php sql-server yii

public function actionView($id)
{
    $criteria = new CDbCriteria();

    $cat = ECCategory::model()->findAll();

    foreach ($cat as $cats) {
        if ($cats->ParentID == $id) {
            $criteria->condition = 't.ParentID=' . $id; // that is if there are more category inside category show them
        } else { // else display the products belonging to that category
            $criteria->join = 'RIGHT JOIN ECProduct AS b ON t.ID = b.CategoryID';
            $criteria->condition = 't.ID=' . $id;
        }
    }

    $dataProvider = new CActiveDataProvider('ECCategory', array(
        'criteria' => $criteria
    ));

    $this->render(
        'view', array(
            'model' => $this->loadModel($id), 'dataProvider' => $dataProvider,
        )
    );
}

这不像我希望的那样有效。它忽略了IF语句并跳转到其他产生后者的结果。我怎么能写出这个条件,我有不同的方法可以做到这一点。拉取的数据将取决于条件,将满足一个或另一个条件。现在它的IF语句没有任何效果,除非我删除了第一部分永远不会到达的else部分。

由于

0 个答案:

没有答案