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

Php 类mysqli_result的对象无法转换为字符串,php,mysqli,Php,Mysqli,我得到一个错误: 类mysqli_result的对象无法转换为字符串 这是我的代码: $result = mysqli_query($con, "SELECT classtype FROM learn_users WHERE username='abcde'"); echo "my result <a href='data/$result.php'>My account</a>"; $result=mysqli\u查询($con

我得到一个错误:

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

这是我的代码:

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

echo "my result <a href='data/$result.php'>My account</a>";
$result=mysqli\u查询($con,“从用户名为`abcde`的学习用户中选择类类型”);
呼应“我的结果”;

函数
query()
返回一个对象,您需要从该函数返回的内容中获取一条记录。查看此示例,了解如何从mysql打印数据方法将对象资源返回给
$result
变量,而不是字符串。

您需要循环它,然后访问记录。您不能直接将其用作
$result
变量

while ($row = $result->fetch_assoc()) {
    echo $row['classtype']."<br>";
}
while($row=$result->fetch_assoc()){
echo$row['classtype']。“
”; }
试试:

$row = mysqli_fetch_assoc($result);
echo "my result <a href='data/" . htmlentities($row['classtype'], ENT_QUOTES, 'UTF-8') . ".php'>My account</a>";
$row=mysqli\u fetch\u assoc($result);
呼应“我的结果”;

在使用
$result
变量之前,应使用
$row=mysqli\u fetch\u array($result)
mysqli\u fetch\u assoc()函数

像这样:

$row = mysqli_fetch_array($result);
并根据需要使用
$row
数组。

返回一个
mysqli\u结果
对象,该对象不能序列化为字符串

您需要从对象获取结果。下面是如何做到这一点

如果需要单个值。 从结果中提取一行,然后访问列索引0或使用关联键。如果结果中不存在行,请使用null合并运算符

$result = $con->query($tourquery);  // or mysqli_query($con, $tourquery);

$tourresult = $result->fetch_array()[0] ?? '';
// OR
$tourresult = $result->fetch_array()['roomprice'] ?? '';

echo '<strong>Per room amount:  </strong>'.$tourresult;

查看的参考,它会让您了解如何使用从
mysqli::query()
返回的对象。您需要首先获取一行数据:如果($row=$result->FETCH_assoc()){…},您也可以这样做,而不是while,如果您知道它只有一行。他们在这里使用mysqli_作为API。MySQL_uuu不会与此混为一谈。
$result = $con->query($tourquery);  // or mysqli_query($con, $tourquery);

foreach($result as $row) {
    echo '<strong>Per room amount:  </strong>'.$row['roomprice'];
}