【问题标题】:PHP [Commands out of sync; you can't run this command now] on new mysqli();PHP [命令不同步;你现在不能运行这个命令] new mysqli();
【发布时间】:2017-06-02 14:21:59
【问题描述】:

我在 PHP 中创建了一个类来处理处理 MySQL 数据库的大部分工作。 这是一个代码示例:

class DataAccessBase
{
protected $sql_wr;
protected $sql_ro;

function __construct()
{
    $this->sql_wr = new mysqli();
    $this->sql_ro = new mysqli();

    $this->sql_wr->ssl_set(DB_WR_SSLKEY, DB_WR_SSLCERT, DB_WR_SSLCA, NULL, NULL);
    $this->sql_ro->ssl_set(DB_RO_SSLKEY, DB_RO_SSLCERT, DB_RO_SSLCA, NULL, NULL);
}

当构造函数运行时,我在 new mysqli(); 上收到“命令不同步...”错误。他们两个。
我所做的所有搜索都讨论了尝试执行多个查询的错误代码。我什至在打开连接之前就收到了错误。
我错过了什么?
我也尝试过使用 mysqli_init() 并返回相同的错误。

【问题讨论】:

  • new mysqli()See manual中真的没有参数吗
  • 我真的喜欢。我在另一个函数中使用 real_connect。
  • 你使用的是什么版本的 PHP?
  • 您是否激活了php_openssl 扩展程序?

标签: php mysqli


【解决方案1】:

我更改了代码以将参数添加到 mysqli() 调用中。

$this->sql_wr = new mysqli(DB_WR_HOST, DB_WR_USER, DB_WR_PASS, DBNAME);  

我不再收到新的错误。
我现在还有其他错误,但如果需要,我会提出一个新问题。

【讨论】:

    猜你喜欢
    • 2013-10-05
    • 1970-01-01
    • 2016-04-11
    • 2016-05-28
    • 2015-04-16
    • 1970-01-01
    • 1970-01-01
    • 2013-04-08
    • 2021-10-13
    相关资源
    最近更新 更多