![](/img/trans.png)
[英]mysqli error : Cannot use object of type mysqli_result as array
[英]Cannot use object of type mysqli_result as array in php Mysql
我想為我的數據庫選擇最后一行,並將標題為 s1 和 s2 的列回顯到網頁正文中,以下是我的代碼。 這給出了一個錯誤。
<html>
<body>
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "mydb2";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT s1, s2 from reading ORDER BY id DESC LIMIT 1";
$row = array();
$row = mysqli_query($conn,$sql);
echo " cup 1". $row["s1"]. "CUP 2". $row["s2"];
?>
</body>
</html>
您必須使用 mysqli_fetch_assoc(它將遍歷您的結果集),如下所示:
if ($result = mysqli_query($conn, $sql)) {
while ($row = mysqli_fetch_assoc($result)) {
echo " cup 1". $row["s1"]. "CUP 2". $row["s2"];
}
/* free result set */
mysqli_free_result($result);
}
無循環:
if ($result = mysqli_query($conn, $sql)) {
$row = mysqli_fetch_assoc($result);
if($row)
{
echo " cup 1". $row["s1"]. "CUP 2". $row["s2"];
}
/* free result set */
mysqli_free_result($result);
}
<html>
<body>
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "mydb2";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("MySQL Connection Error"); // Try not to output SQL error messages on the front-end, look into error_reporting()
}
$sqlQuery = "SELECT s1, s2 from reading ORDER BY id DESC LIMIT 1";
$results = mysqli_fetch_assoc(mysqli_query($conn, $sqlQuery));
echo " cup 1". $results["s1"]. "CUP 2". $results["s2"];
?>
</body>
</html>
除此之外,我建議不要同時以過程風格和面向對象風格進行 SQL 操作,因為這可能會導致未來的許多復雜情況。
使用mysqli_fetch_assoc獲取結果到數組
$sql = "SELECT s1, s2 from reading ORDER BY id DESC LIMIT 1";
if ($result = mysqli_query($conn, $sql)) {
$row = mysqli_fetch_assoc($result);
echo " cup 1". $row["s1"]. "CUP 2". $row["s2"];
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.