Предпросмотр печатает каждый из заголовков, и я получаю все аккордеоны, но все, кроме первого аккордеона, пустые. Что мне не хватает?Пока цикл работает только при первом запуске
$result2 = mysqli_query($con, "SELECT * FROM sections ORDER BY `order`");
$sectionnames = array();
while($row = mysqli_fetch_array($result2)) {
$sectionnames[] = $row['sectionname'];
}
$result = mysqli_query($con,"SELECT * FROM faq ORDER BY `order`");
foreach ($sectionnames as $sectionname) {
echo '<h3 id="sectionname">' . $sectionname . '</h3>';
echo '<div id="accordion">';
while($row = mysqli_fetch_array($result)) {
if ($sectionname == $row['section']) {
echo '<h3>' . $row['heading'] . '</h3>';
echo '<div>' . $row['content'] . '</div>';
}
}
echo '</div>';
}
так, что мне нужно сделать, чтобы исправить это –
Это нормальное поведение. Вы извлекаете данные за строкой из ресурса. По завершении указатель ресурса заканчивается. Вот почему вы должны его сбросить. Вместо этого вы можете создать пустой массив до вашего времени, а внутри него - $ data [] = $ row. Теперь ваш $ data var будет содержать все результаты, которые вы можете повторно использовать. –