我有一个action
我calling
两次
Controller.php
UserController extends Controller {
public actionCopy($id = false){
if($id){
//redireting to a view
}
else{
//rediredtion to a differnet view
}
}
}
我首先得到id
然后从first view
我再次来Copy action
没有id所以其他部分正在运行nw但是在此我希望得到{{1}我从第一次请求得到的。
我试图在控制器中定义一个全局变量,如
$id
并将其设置为此。
我知道Controller.php
UserController extends Controller {
public $user;
public actionCopy($id= false){
if($id){
$this->user = $id;
//redireting to a view
}
else{
echo $this->user ;// but it has nothing
//rediredtion to a differnet view
}
}
}
没有执行,所以if condition
没有价值,但我第一次设置$id
,然后为什么没有$this->user
。
任何帮助都是适用的
答案 0 :(得分:0)
试试这个,
class UserController extends Controller {
public actionCopy($id = false){
if($id){
//set up a session here
Yii::app()->session['_data_id'] = $id;
//remaining code here
}
else{
$id=isset(Yii::app()->session['_data_id'])?Yii::app()->session['_data_id']:NULL; // the id you want from previous request
if($id!=NULL){
//remaining code
unset(Yii::app()->session['_data_id']); //clear it after use
}
}
}
}