web-dev-qa-db-ja.com

クラスmysqli_resultのオブジェクトを文字列に変換できませんでした

エラーが発生しています:

Object of class mysqli_result could not be converted to string

これは私のコードです:

$username2 = htmlentities($_SESSION['user']['username'], ENT_QUOTES, 'UTF-8');

$con = mysqli_connect('localhost','root','','test');

$result = mysqli_query($con, "SELECT classtype FROM learn_users
                        WHERE username='$username2';");

echo "my result <a href='data/$result.php'>My account</a>";
18
Chinmay Chandak

mysqli_query()は、文字列ではなく、オブジェクトリソースを$result変数に返します。

ループしてからレコードにアクセスする必要があります。 $result変数として直接使用することはできません。

コード...

while ($row = $result->fetch_assoc()) {
    echo $row['classtype']."<br>";
}
38

_$result_変数を使用する前に、$row = mysql_fetch_array($result)またはmysqli_fetch_assoc()関数を使用する必要があります。

このような:

_$row = mysql_fetch_array($result);
_

必要に応じて_$row_配列を使用します。

で試してください:

$row = mysqli_fetch_assoc($result);
echo "my result <a href='data/" . $row['classtype'] . ".php'>My account</a>";
0
hsz