Я пытаюсь выбрать один запрос, используя user_id
, чтобы получить категории, специфичные для пользователя, а затем оттуда использовать результаты первого запроса для выбора данных из второй таблицы во втором запросе. Данные второго запроса, которые я хотел бы отобразить в выпадающем меню. Есть ли простой способ сделать это? Я новичок в использовании mysqli, поэтому, пожалуйста, несите меня.Mysqli select несколько запросов
У меня есть следующая функция, но она не отображает ничего в раскрывающемся меню, но показывает раскрывающееся меню.
function get_classes($mysqli) {
if(isset($_SESSION['user_id'], $_SESSION['username'], $_SESSION['login_string'])) {
$user_id = $_SESSION['user_id'];
if ($stmt = $mysqli->prepare("SELECT category_id
FROM questions WHERE user_id = ?")) {
$stmt->bind_param('i', $user_id);
$stmt->execute();
$stmt->store_result();
if($stmt->num_rows>0) {
$stmt->bind_result($category_id);
$stmt->fetch();
if($result = $mysqli->prepare("SELECT category_id, category_name
FROM category WHERE category_id = ?")) {
$result->bind_param('s', $category_id);
$result->execute();
$result->store_result();
}
}
echo "<select id='classes' name='classes'>";
while ($row = $result->fetch_assoc()) {
unset($user_id, $category_name);
$category_id = $row['category_id'];
$category_name = $row['category_name'];
echo '<option value="'.$category_id.'">'.$category_name.'</option>';
}
echo "</select>";
}
}
}
Я вызываю функцию с другой страницы с помощью следующего кода:
<?php
get_classes($mysqli);
?>
Возможно, вы, возможно, просто присоединитесь к этим запросам, а намного проще, это набор user_id? – Ghost
Да user_id установлен – nviens