たとえば、セッション「globalunit」があり、そのセッション値を setState 関数を使用して設定したいとします。だから私はコントローラークラスでactionSetUnitとactionGetUnit関数を作成し、Viewクラスでajaxによって呼び出されるようにします
//to set globalunit
public function actionSetUnit(){
if (isset($_POST['unit']) && $_POST['unit'] !== null){
Yii::app()->user->setState('globalunit',$_POST['unit']);
echo 'globalunit value now is :'.Yii::app()->user->getState('globalunit');
}
}
//to get globalunit
public function actionGetUnit(){
echo 'globalunit value now is :'.Yii::app()->user->getState('globalunit');
}
ビューでコンボユニットを変更/クリックすると、ビューで actionSetUnit を呼び出すことがよくあります。しかし、ビューで getUnit 関数を呼び出して globalunit 値を表示すると、結果/応答が不安定になります。コンボユニットで最後に選択したユニットに応じて、応答が真になることがあります。時々、responsがfalseです(コンボユニットで選択した最後のユニットの値に応じて変更されません):(...
おそらく、setState関数を呼び出して、同じ名前の値セッションを設定しすぎます。
コードに欠落がありますか??