mysql():Typo3中不推荐使用此函数

时间:2014-10-08 13:25:42

标签: php mysql typo3

我正在将一个网站移动到一个较新的服务器,并且此错误出现在前端。

PHP : mysql(): This function is deprecated; use mysql_query() instead in /var/www/vhosts/xxxxxx.com/httpdocs/typo3conf/ext/ph_nextgenmenu/pi1/class.tx_phnextgenmenu_pi1.php line 93

我知道该函数可能已被弃用。问题是这是我移动到新服务器的第三个网站,前两个网站有相同的Typo3版本4.4.0,所有这些网站都有相同的代码行用于访问数据库所以它不是#ta; ta不推荐使用功能的情况,是我无法找到的一些错误配置。

这是该函数的代码:

function getPages($parentId)
    {
        $pages = array();
        $query = "SELECT * FROM pages WHERE doktype IN(1, 2, 3, 4) AND deleted = 0 AND hidden = 0 AND pid = " . $parentId . " AND nav_hide = 0 ORDER BY sorting ASC";
        $result = mysql(TYPO3_db, $query);
        while ($row = mysql_fetch_array($result))
        {
            $pages[] = $row;
        }
        return $pages;
    }

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

首先,让其他具有此typo3版本的网站安装和使用相同的typo3扩展名(ph_nextgenmenu)吗?

之后请激活Typo3 INSTALL_TOOL中其他站点的错误报告。你需要寻找的部分是“display_errors”。也许其他网站也有同样的问题。

至少,如果PHP版本较新并且不包括错误消息中的扩展等已弃用的函数,我建议升级到较新的typo3版本,并找到用新版本替换扩展名(ph_nextgenmenu)或手动编辑它以直接使用TYPO3 SQL API或更新的PHP函数。

如果您想将扩展查询更改为TYPO3 API,API文档可能会对您有所帮助。

我认为如果您在扩展管理器中禁用该扩展程序,该网站应该像其他网站一样工作吗?