首页 > 后端开发 > php教程 > Thinkphp 变量保存问题

Thinkphp 变量保存问题

WBOY
发布: 2016-06-06 20:34:29
原创
1214 人浏览过

<code>class AdminAction extends Action {
    private  $uid_t;
    public function addassets(){
        $uid = I('id');
        $this->uid = $uid;
        $this->setuid_t($uid);
        $this->display();
    }

    public function setuid_t($uid){
        $this->uid_t = $uid;
    }

    public function getuid_t(){
        return $this->$uid_t;
    }

    public function actaddassets(){
        $data['uid'] = $this->getuid_t();
        $data['assets_name'] = I('assets_name');

        if ($id=M('device')->add($data)) {
            $this->redirect('index');
        }else{
            echo M('device')->getLastsql();exit;
            $this->redirect('addassets');
        }
    }
</code>
登录后复制
登录后复制

在addassets()中从前端获得了一个变量id,保存在本地的uid,然后display出addassets.html页面。但是这个页面中不用uid这个变量,而下一个页面(addassets.html中有一个button跳转到actaddassets.html)actaddassets.html中需要用到uid这个变量。通过上面的方法在actaddassets()中获得不了uid这个变量。
初次学习,还往大神指点,谢谢!

回复内容:

<code>class AdminAction extends Action {
    private  $uid_t;
    public function addassets(){
        $uid = I('id');
        $this->uid = $uid;
        $this->setuid_t($uid);
        $this->display();
    }

    public function setuid_t($uid){
        $this->uid_t = $uid;
    }

    public function getuid_t(){
        return $this->$uid_t;
    }

    public function actaddassets(){
        $data['uid'] = $this->getuid_t();
        $data['assets_name'] = I('assets_name');

        if ($id=M('device')->add($data)) {
            $this->redirect('index');
        }else{
            echo M('device')->getLastsql();exit;
            $this->redirect('addassets');
        }
    }
</code>
登录后复制
登录后复制

在addassets()中从前端获得了一个变量id,保存在本地的uid,然后display出addassets.html页面。但是这个页面中不用uid这个变量,而下一个页面(addassets.html中有一个button跳转到actaddassets.html)actaddassets.html中需要用到uid这个变量。通过上面的方法在actaddassets()中获得不了uid这个变量。
初次学习,还往大神指点,谢谢!

<code>class AdminAction extends Action {
    static $uid_t="";

    public function addassets(){
        $uid = I('id');
        $this->uid = $uid;
        self::$uid_t = $uid;
        $this->display();
        //echo self::$uid_t;
    }

    public function actaddassets(){
        echo self::$uid_t;
        /*
        $data['uid'] = $uid;
        $data['assets_name'] = I('assets_name');

        if ($id=M('device')->add($data)) {
            $this->redirect('index');
        }else{
            echo M('device')->getLastsql();exit;
            $this->redirect('addassets');
        }
        */
    }
</code>
登录后复制

做了一些尝试,定义一个static的$uid_t,然后在addassets()中不输出页面,直接echo self::$uid_t是有值的,但是紧接着在actaddassets()中再次echo self::$uid_t就没值了。。求教这是为什么。。?谢谢!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板