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

Joa*_*ann 4 php mysql

我让谷歌帮助我,我没有运气.:-(这是生成错误的特定代码:

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

整个功能如下:

    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."'");
}
Run Code Online (Sandbox Code Playgroud)

如果我错过了一些愚蠢的话,请原谅我.任何人都可以告诉我是什么原因导致问题???

was*_*ash 6

问题是$ 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"]."'");

    }

}
Run Code Online (Sandbox Code Playgroud)

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