Omtex移动版帐户/登录错误


Omtex mobile version account/login error

我在网站上安装了omtex扩展,但当我试图访问帐户或注册时,它会带来致命错误:

对vqmod/vqcache/vq2-system_engine_controller.php第91行中的非对象调用成员函数modcheck()

这是代码:

            // LINE 80 HERE BELOW
            ob_start();
            require(VQMod::modCheck(VQMod::modCheck(DIR_TEMPLATE . $this->template)));
            $this->output = ob_get_contents();
            ob_end_clean();
            return $this->output;
        } else {
            // LINE 91 HERE BELOW
            $file_default = $vqmod->modCheck(DIR_DEFAULT_TEMPLATE . $this->template);
            if (file_exists($file_default)) {
            extract($this->data);
            ob_start();
            require(VQMod::modCheck(VQMod::modCheck($file_default)));
            $this->output = ob_get_contents();
            ob_end_clean();
            return $this->output;
        }

您在这里静态调用它:

    require(VQMod::modCheck(VQMod::modCheck(DIR_TEMPLATE . $this->template)));
            ^^^^^^^^^^^^^^^---

以及其他各种地方,但作为一种方法:

    $file_default = $vqmod->modCheck(DIR_DEFAULT_TEMPLATE . $this->template);

在几个地方。$vqmod是对象吗?你的错误表明事实并非如此。

vQmod的最新版本不是基于实例的,而是静态的。这一变化发生在一年多前,因此上面的代码应该升级。只需将$vqmod->modCheck更改为VQMod::modCheck即可解决此问题。此外,如果在过时的代码之前有一个global $vqmod;,请将其删除。您还应该检查您的安装,因为requires中不应该有两个对VQMod::modCheck的调用。要么有两个XML文件在做同样的事情,要么出于任何原因对modCheck进行了硬编码