duai1683 2016-07-11 18:15 采纳率: 0%
浏览 69
已采纳

致命错误:调用未定义的方法Module_model :: active()

I have a problem with my cms; when I want to use my bugtracker, I get this error :

Fatal error: Call to undefined method Module_model::active() in C:\wamp\www\CI\application\controllers\Support.php on line 107 A PHP Error was encountered

Severity: Error

Message: Call to undefined method Module_model::active()

Filename: controllers/Support.php

Line Number: 107

This is the code :

public function bugtracker()
    {
        $this->load->model('CMS_model', 'CMSManager');
        if($this->session->has_userdata('guid') || $this->ModuleManager->active(23) != TRUE){
            $data['account'] = $this->AccountManager->info('guid', $this->session->userdata('guid'));
        }
        else{
            $data = array();
        }
        $data['bugtrackers'] = $this->CMSManager->bugtrackers();
        $this->layout->view('support/bugtracker', $data);
        foreach($data['bugtrackers'] as $bugtracker){
            if(isset($_POST['vote'])){
                if(!$this->session->has_userdata('guid')){
                    redirect('home/');
                }
                else{
                    $this->CMSManager->add_vote($bugtracker->id, $bugtracker->vote_account.$data['account']->guid.'|', $bugtracker->vote + 1);
                    $this->message->alert('1', 'Vote accepté, redirection en cours...', site_url('support/bugtracker'), '3');
                }
            }
        }
        if(isset($_POST['post'])){
            if(!$this->session->has_userdata('guid')){
                redirect('home/');
            }
            else{
                $title = post($this->input->post('title'));
                $content = post(nl2br($this->input->post('content')));
                if(empty($title) || empty($content)){
                    $this->message->alert('2', 'Champs vides.', site_url('support/bugtracker'), '3');
                }
                elseif(strlen($title) > 50 || strlen($title) < 5){
                    $this->message->alert('2', 'La longueur de votre titre est incorrect.', site_url('support/bugtracker'), '3');
                }
                elseif(strlen($content) < 10){
                    $this->message->alert('2', 'La longueur de votre report est incorrect.', site_url('support/bugtracker'), '3');
                }
                else{
                    $this->CMSManager->add_bug($data['account']->guid, $title, $data['account']->guid.'|', $content);
                    $this->message->alert('1', 'Bug publié, redirection en cours...', site_url('support/bugtracker'), '3');
                }
            }
        }
    }

How can I fix this error?

</div>
  • 写回答

1条回答 默认 最新

  • douye2020 2016-07-13 18:34
    关注

    Your error of undefined variable might be due to the ; that you have after foreach. Please remove the ; after foreach & then check again.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?