【发布时间】:2013-09-25 21:34:43
【问题描述】:
我使用 vqmod 安装了 OpenCart。
最近移到了一个带有较新版本的 PHP 的服务器,上面说 mysql 已被弃用。
所以我编辑了 config.php 让 OpenCart 使用 mysqli 而不是 mysql。
不幸的是,现在收到错误
致命错误:调用未定义的方法 mysqli::escape() in /home/shop/vqmod/vqcache/vq2-system_library_db.php 在第 20 行
【问题讨论】:
-
要么你的编辑出错了,要么你的 OpenCart 版本不支持 Mysqli。无论如何,mysql暂时仍然支持。您可以忽略该消息,除非它显示在您的页面上。
-
PHP 消息非常清楚:使用 mysql 也返回了一个致命错误...使用已弃用的 mysql 函数的致命错误...
-
不推荐使用的函数会发出 E_DEPRECATED 消息,但不是致命的。这里的错误信息是指
mysqli::escape(),它不存在,mysql::escape()也不存在。 -
你是对的。原来我把 2 条消息混为一谈。通过从 mysqli 切换到 mysql,我收到一条已弃用的消息,以及另一个与我没有在新服务器上启用的 mcrypt 相关的致命错误。谢谢!
-
另外,OpenCart 开发者最近做了一些改变,破坏了它的 mysqli。希望这会很快得到解决。
标签: php mysql mysqli opencart vqmod