一尘不染

mysqli_result类的对象无法转换为字符串

mysql

我要求Google帮我,我没有运气。:-(以下是产生错误的特定代码:

$this->conn->query("UPDATE tz_members SET confirm='yes' WHERE usr='".$uname."'");

整个功能如下:

    function update_confirm_field($code) {

    $uname = $this->conn->query("SELECT usr FROM tz_members WHERE 
                     confirm='".$code."'");

    $this->conn->query("UPDATE tz_members SET confirm='yes' WHERE 
                     usr='".$uname."'");
}

如果我错过了一些愚蠢的事情,请原谅我。谁能告诉我是什么引起了这个问题???


阅读 382

收藏
2020-05-17

共1个答案

一尘不染

问题在于$ uname是一个对象,而不是字符串。您需要调用$ uname的方法之一来访问数据。

    function update_confirm_field($code) {

    $uname = $this->conn->query("SELECT usr FROM tz_members WHERE 
                     confirm='".$code."'");

    while ($row = $uname->fetch_assoc()) {

    $this->conn->query("UPDATE tz_members SET confirm='yes' WHERE 
                     usr='".$row["usr"]."'");

    }

}

应该这样做(或上述解决方案之一)。

2020-05-17