在cakephp中的视图文件中获取数据库记录值

时间:2013-11-26 14:28:05

标签: cakephp cakephp-2.1

我有一个记录数组作为我的连接查询的结果。

我想在我的视图文件中显示所有记录。这怎么可能?我是cakephp的新手。

我的控制器功能

function viewsurvey()
{
    $sid = $this->params['url']['sid'];
    $this->set('sid',$sid);
    $this->Survey->create();
    $this->loadModel('Question');
     $quest = $this->Question->find('all', array('joins' => array( 
    array( 
        'table' => 'surveys', 
        'alias' => 'Survey', 
        'type' => 'inner', 
        'foreignKey' => false, 
        'conditions'=> array('Survey.id = Question.survid',
            'Question.survid' => $sid) 
    )

        ))); 

        print_r($quest)

        // The record is Array ( [0] => Array ( [Question] => Array ( [id] => 9 [survid] => 2 [quest] => mnjlkj [type] => 2 [qvalues] => yes,no ) ) [1] => Array ( [Question] => Array ( [id] => 10 [survid] => 2 [quest] => mnm,n [type] => 1 [qvalues] => 0 ) ) )

}

我希望在视图文件中获取div中的每一行;直到获取所有行。这怎么可能。希望最早能有人给我建议。

1 个答案:

答案 0 :(得分:1)

您需要在控制器中设置变量$quest。因此,view.ctp

可以访问数据
$this->set('quest', $quest);

并且你可以在你看来阅读它。

foreach($quest as $q){
   echo '<div>'.$q['Question']['id'].'<br />
      '.$q['Question']['survid'].'<br />
      '.$q['Question']['quest'].'<br />
      '.$q['Question']['type'].'<br />
      '.$q['Question']['qvalues'].'
   </div>';  
}

对于你所拥有的每一张唱片,都会有一个新的div。在你的情况下,将有2个div

关于循环播放数字的评论后修改:

$i=1;
foreach($quest as $q){
   ...
   ...
   $i++;
}