Yii框架验证码与beforeAction()函数冲突

Yii框架验证码与beforeAction()函数冲突,yii,Yii,我在Yii中有应用程序,我从一些基本控制器扩展了所有类,其中包含以下代码: protected function beforeAction($action) { $this->setglobalvariable(); return parent::beforeAction($action); } 正如我刚才所理解的,这些代码阻止验证码显示,因为当我删除它时,验证码会显示出来!验证码功能是: public function actions()

我在Yii中有应用程序,我从一些基本控制器扩展了所有类,其中包含以下代码:

protected function beforeAction($action)
    {
        $this->setglobalvariable();
        return parent::beforeAction($action);
    }
正如我刚才所理解的,这些代码阻止验证码显示,因为当我删除它时,验证码会显示出来!验证码功能是:

public function actions()
    {
        return array(
            // captcha action renders the CAPTCHA image displayed on the contact page
            'captcha'=>array(
                'class'=>'CCaptchaAction',
                'backColor'=>0xFFFFFF,
                'minLength'=>2,
                'maxLength'=>3,
                'width'=>60,
            ),
            // page action renders "static" pages stored under 'protected/views/site/pages'
            // They can be accessed via: index.php?r=site/page&view=FileName
            'page'=>array(
                'class'=>'CViewAction',
            ),
        );
    }

那么,我怎样才能同时使用beforeAction和captcha呢?

显然,您的Controller::setglobalvariables()方法中有一些代码与captcha的代码冲突

ccaptchAction::run()方法使用$\u GET参数。你是不是在重新设定你得到的美元


你能给我们看一下代码吗?

在操作函数之前,不要与其他Yii方法或函数有任何冲突


问题在代码中。

确认在您的结构中,请向我们展示更多代码。将程序放入fresh yii并进行测试。

我将其放入fresh yii并运行,发现错误。它是mo结构。