我试图使用一个查询来查找与在文本输入框中输入的用户名相关的用户标识。然后,我尝试使用我在上一个查询中找到的用户标识从同一数据库的另一个表中选择详细信息。然而,当我尝试这个,我得到的错误:如何在另一个查询(PHP)中使用一个SQL查询的结果
Catchable fatal error: Object of class mysqli_result could not be converted to string in /home/jack/public_html/viewfriendlogbook.php on line 22
我认为,这是因为我想使用这个变量实际上是一个对象,而不是一个整数,但我不知道如何解决这个问题。任何帮助将不胜感激。
我的PHP:
<?php
SESSION_START();
$servername = "localhost";
$username = "MY USERNAME";
$password = "MY PASSWORD";
$dbname = "MY DATABASE NAME";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$user= $_POST['textinput'];
$finduserid = "SELECT `user-id` FROM `users` WHERE `username` = $user";
$requesteduserid = mysqli_query($conn,$finduserid);
echo $requesteduserid ;
$sql = "SELECT * FROM `climbs` WHERE `userlogged` = '$requesteduserid'";
$result = mysqli_query($conn,$sql);
echo '<style>
table, th, td {
border: 1px solid black;
}
</style>';
if ($result->num_rows > 0) {
echo "<table><tr><th>Climb</th><th>Crag</th><th>Grade</th> <th>Description</th></tr>";
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<tr><td>" . $row["climbname"]. "</td><td>" . $row["cragname"]. "</td><td> " . $row["grade"]. "</td><td>" . $row["description"]. "</td></tr>";
}
echo "</table>";
} else {
echo "0 results";
}
$conn->close();
?>
此主题可能对您有帮助吗? http://stackoverflow.com/questions/21722375/object-of-class-mysqli-result-could-not-be-converted-to-string-in – Tina