当前位置: 首页 > 知识库问答 >
问题:

Wordpress致命错误:未捕获错误:在/wp-includes/wp-db.php:1570中调用未定义的函数mysql_connect()

秦阳旭
2023-03-14

我有大麻烦了。我安装了一个空版本的woocommerce购物车为基础的运输插件,我发现它不相关,根据我的要求,并删除了插件区的插件。删除了那个插件后,我的网站就关闭了。它不断地向我显示致命的错误:

Fatal error: Uncaught Error: Call to undefined function mysql_connect() in /home/dev/public_html/new/wp-includes/wp-db.php:1570
Stack trace:
#0 /home/dev/public_html/new/wp-includes/wp-db.php(658): wpdb->db_connect()
#1 /home/dev/public_html/new/wp-includes/load.php(404): wpdb->__construct('dev_test', 'password', 'dev_test_ne...', 'localhost')
#2 /home/dev/public_html/new/wp-settings.php(107): require_wp_db()
#3 /home/dev/public_html/new/wp-config.php(82): require_once('/home/dev/p...')
#4 /home/dev/public_html/new/wp-load.php(37): require_once('/home/dev/p...')
#5 /home/dev/public_html/new/wp-blog-header.php(13): require_once('/home/dev/p...')
#6 /home/dev/public_html/new/index.php(17): require('/home/dev/p...')
#7 {main} thrown in /home/dev/public_html/new/wp-includes/wp-db.php on line 1570

我尝试替换所有核心文件,不包括wp-config.php和wp-content文件夹。我仍然得到同样的错误。

此外,我尝试重命名插件文件夹,但错误是在那里。

你们能建议我怎么把我的网站拿回来吗。

共有2个答案

南宫浩皛
2023-03-14

可能的错误源:

  • 自PHP 7以来,mysql_*函数已被删除,请参阅PHP对MySQL驱动程序的官方概述。
  • 您使用PHP 5.x,但未启用mysql扩展,而是启用mysqli和/或pdo_mysql

您可以设置

define('WP_USE_EXT_MYSQL', true);

wp-config.php文件中,使WordPress使用mysqli扩展。

尉迟鸿熙
2023-03-14

我在从PHP5升级到PHP7(在Windows上)时遇到了这个问题。问题是未启用mysqliPHP扩展。如果mysqli不可用,WordPress5+会检测到这一点,并尝试使用不推荐的mysql_connect()调用连接到数据库。这导致一个非常误导的错误消息,关于mysql_connect()函数不可用(因为我们不想要这个函数)。

在php.ini中,确保设置了extension_dir(使用完整目录名),并且启用了mysqli扩展

extension_dir = "C:\php-7.3.10\ext"
...
extension=mysqli

要仔细检查哪些扩展处于活动状态,可以运行以下代码

<pre>
<?php print_r(get_loaded_extensions()); ?>
</pre>
 类似资料: