在生产环境中使用 mysqli_connect() 从 Mysql 中选择行

Issue Selecting Row from Mysql with mysqli_connect() on production

我正在重构一个现有应用程序,该应用程序使用旧方法连接 mysql 数据库并与其交互,例如 mysql_connect() 和 mysql_fetch_array,其代码如下:

更新 我在页面上获得的唯一输出是下面的内容,它们是空数组。

Array ( [initial] => Array ( ) [additional] => Array ( ) )

最终更新 这是根用户无法访问 % 的问题。我收到类似这样的错误:The user specified as a definer ('root'@'%') does not exist 输出这是由 运行 命令修复的:

grant all on *.* to 'root'@'%' identified by 'password' with grant option;

转换的原因是使用 mysql_connect() 的原始编码使用(不是我)在关闭远程连接时(据我所知)对 mysql 不起作用(我这样做)。

为什么我的新代码没有输出任何东西?上面的 原始代码 在开发环境中有效。远程连接已关闭,但未在生产中。

谢谢。

  • 您的 class 末尾缺少右括号 }

  • 你没有select数据库

  • 为什么到处创建$this->dbConn,你在构造函数中定义了它。

  • 你的$this->dbConn->query在哪里定义的? $this->dbConn是连接资源。

注意

添加 error_reporting(E_ALL);ini_set('display_errors', 1); 以发现错误。