Вот мой запрос:Выпадающий список появляется только в первой строке таблицы
$sql = "SELECT * FROM employee";
$query = "SELECT * FROM employeerole ORDER BY role_id";
$result = mysqli_query($link, $sql);
$result1 = mysqli_query($link, $query);
<?php
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
?>
<tr>
<td><?php echo $row["id"]; ?></td>
<td><?php echo $row["first_name"]; ?></td>
<td><?php echo $row["last_name"]; ?></td>
<td><?php echo $row["username"]; ?></td>
<td><?php echo $row["role"]; ?></td>
<td>
Вот мой код, который включает в себя выпадающий список в ячейке таблицы, однако, данные в раскрывающемся списке только появляется в первой строке таблицы (как показано на скриншоте ниже).
Это что-то связано с петлей?
<form action ="change.php">
<select id="role" class="" onchange="this.form.submit()">
<?php while ($line = mysqli_fetch_array($result1, MYSQL_ASSOC)) { ?>
<option value="<?php echo $line['role_id']; ?>"><?php echo $line['role_name']; ?></option>
<?php } ?>
</select>
</form>
</td>
<td><input type="button" onclick="ConfirmDelete()" value="Delete account"</td>
</tr>
<?php } ?>
Снимок экрана таблицы:
mysqli_fetch_array достигли конца, следующий цикл не будет иметь следующий. Вам нужно сохранить данные в массив, а затем зациклировать их несколько раз. – FirstOne
Возможный дубликат [Как выполнить результат mysql в два раза?] (Http://stackoverflow.com/questions/6439230/how-to-go-through-mysql-result-twice) – FirstOne
@FirstOne они просто используют ' MYSQLI_ASSOC' в 'mysqli_fetch_array ($ result, MYSQLI_ASSOC)' У меня такое чувство, что они используют LIMIT, который они не показывают. Я мог ошибаться. –