Yii::app()->session

Обсуждения, заметки, статьи о фреймворке

Модераторы: Xpycm, Koduc

Правила форума
ВНИМАНИЕ! Форум не является средством гарантированной поддержки клиентов и пользователей. Поэтому на быстрый ответ тут рассчитывать не нужно, как и на ответ вообще. Сотрудники отвечают по мере своих возможностей.

На форуме действует ограничение в 3 сообщения / сутки.
Если Вы хотите сказать "спасибо", то воспользуйтесь функцией "Повысить репутацию" - зелёная иконка "плюс" под ником ответившего.

Yii::app()->session

Сообщение Feruza » 31 окт 2015, 09:12

Zdravstvuyte, lyudi dobrie i umnie. Pojaluysta pomogite
Controller:
Код: Выделить всё
public function actionFizika($id)
    { 
        $block 
= Category::model()->findByPk(array($id));
        $models1 = Fizika::model()->findAll(
        array(  
            
"condition" => "",  
            
"order" => "rand()",  
            
"limit" => 10,  
        
)     
            
);
        $this->render('index', array('models'=>$models1, 'block'=>$block));        
    
}
    public function actionMatem()
    {   

        $this
->render('index', array('models'=>$models1, 'block'=>$block));
        }
 

index.php
Код: Выделить всё
<?php echo CHtml::beginForm();  
  echo 
"<div class='right'>";
  echo "<b id='s'>".CHtml::link(CHtml::encode("1"), array('test/'.$block->a_block.'/'.$block->id))."</b>";
  echo "<b id='s'>".CHtml::link(CHtml::encode("2"), array('test/'.$block->b_block.'/'.$block->id))."</b>";
  echo "<b id='s'>".CHtml::link(CHtml::encode("3"), array('test/'.$block->c_block.'/'.$block->id))."</b>";
  echo "</div>";
 $a=0;    
foreach 
($models as $one ) {
  $a++;
  if (isset(Yii::app()->session['questions'])) {
  echo '<b>'.$a.'. </b>'.Yii::app()->session['questions']['question'].'</br>';
  echo CHtml::radioButtonList('answer_'.$a, $model->answer,array(
  Yii::app()->session['questions']['a'], Yii::app()->session['questions']['b'])).'</br>';
}
  
else  Yii
::app()->session['questions']=array(
    'id'=>$one->id,
    'question'=>$one->question, 
     
'a'=>$one->a, 
   
'b'=>$one->b, 
        
);

}
  echo "</br>".CHtml::SubmitButton('result',array('class'=>"btn btn-info"));
  echo CHtml::endForm();
 
  ?>

Problema:
1.v etom sluche vivodet 10 shtuk odinakvy testi dlya vsex actionov ( prichenu kanewno ponimayu no rewat ne smogla
2.dlya kajdogo actiona doljna bit svoya sessiya Vverxu umenya ssilka dlya razlichnix actionov Xochu chtob oni rabotali kak prev I next
Feruza
Незнакомец
 
Сообщения: 1
Зарегистрирован: 31 окт 2015, 09:06
Очки репутации: 0

Re: Yii::app()->session

Сообщение Xpycm » 02 ноя 2015, 22:22

Здравствуйте.

1)Уберите пустой condition
Скорее всего необходимо перебирать массив models1 при помощи foreach.

2) При просмотре теста вы же знаете его id. Можете путём sql запроса получить предыдущий и следующий id. Использовать сессии для этого ни к чему
Dropbox
Open Real Estate CMS: FAQ | FAQ 2 | FAQ 3
Изображение
Xpycm
Разработчик
Разработчик
 
Сообщения: 1592
Зарегистрирован: 30 дек 2011, 11:06
Откуда: Йошкар-Ола
Очки репутации: 50


Вернуться в Yii фреймворк

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2