Я пытаюсь использовать один запрос, чтобы найти идентификатор пользователя, связанный с именем пользователя, введенным в текстовое поле ввода. Затем я пытаюсь выбрать детали из другой таблицы в той же базе данных, используя идентификатор пользователя, который я нашел в предыдущем запросе. Однако, когда я пытаюсь это я получаю сообщение об ошибке:Как использовать результат одного SQL-запроса в другом запросе (PHP)
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