+ -
当前位置:首页 → 问答吧 → 初学中,一个私有变量不能访问的问题

初学中,一个私有变量不能访问的问题

时间:2011-06-16

来源:互联网

初学这个,问一下,我有一个添加数据的表单模板,action值为insert,下面代码中,我在insert中把得到的表单数据放到一个private中,然后就跳转到showform模板显示,可是这个时候就读不出来刚才那个private数据了。
  1. class indexAction extends Action{
  2.         private $form_arr;
  3.        
  4.     public function index(){
  5.                
  6.                 $Dao = M("user_base");
  7.                
  8.                 // 查询数据
  9.                 $list = $Dao->select();
  10.                 //dump($list);        // 用 dump() 可以在调试阶段查看数据是否已读取
  11.        
  12.                 // 模板变量赋值
  13.                 $this->assign("list", $list);
  14.                
  15.                 // 输出模板
  16.                 $this->display('Tpl/default/index/index.html');
  17.     }
  18.         public function insert(){
  19.                 $this->form_arr = array($_POST["user_name"],$_POST["user_passwd"],$_POST["user_mail"]);
  20.                 $this->redirect('showform');
  21.         }
  22.         public function showform(){
  23.                 $show_form=$this->form_arr;
  24.                 $this->assign("show_form", $show_form);
  25.                 $this->display('Tpl/default/index/showform.html');
  26.         }
  27.         public function showid(){
  28.                 $Dao = M("user_base");
  29.                 // 查询数据id=1
  30.                 $condition['ub_id'] = $_GET['id'];
  31.                 $find = $Dao->where($condition)->find();
  32.                 $this->assign("find", $find);
  33.                 $this->display('Tpl/default/index/showid.html');
  34.     }
  35. }
复制代码

作者: amu945   发布时间: 2011-06-16

你用redirect就等于页面跳转了,新的页面就会重新声明对象,那时候对象属性的值就没有了到哪去取啊

作者: hedong   发布时间: 2011-06-16

其实你可以把showform当作一个函数直接在insert操作中调用,就ok了

作者: hedong   发布时间: 2011-06-16