Как я могу использовать цикл FOREACH внутри цикла WHILE, чтобы создать несколько столбцов

ПРОБЛЕМА

Я извлекаю данные из моей базы данных … используя цикл WHILE & Я хочу, чтобы возвращаемые данные были объединены в группы «масштабируемых по размеру».

Я думал, что с помощью цикла FOREACH LOOP внутри цикла while, я мог бы добиться этого, по-видимому, я думал неправильно ..

ССЫЛКА НА САЙТ

Посмотреть проблему здесь: http://sis-cr.com/NEWSTORE/store.php?cur_str=cel

КОД

$queryCatz = mysqli_query($cxn, "SELECT DISTINCT idBrand FROM Products ");
while($list_of_xtras = mysqli_fetch_array($queryCatz)) {

$cur = 0;
$rowNum = 1;
foreach($list_of_xtras as $key => $value){

if($cur == 0){
echo '<ul style="border:2px solid purple;" class="theROW' . $rowNum . '">';
}

echo '    <li style="list-style:none;">' . $value. '</li>';

if($cur == 2)
{
echo '</ul>';
$cur = 0;
$rowNum++;
}
else
{
$cur++;
}
}}

Через 3 часа пытаясь это исправить, и рискуя разоблачить мой очевидный недостаток понимания, Я смиренно преклоняюсь перед коллективным разумом ТАК …. и кричите … ПОМОГИТЕ, я закодировал и не могу встать!

1

Решение

Я могу быть не в курсе. Я думаю, что вы хотите:

$queryCatz = mysqli_query($cxn, "SELECT DISTINCT idBrand FROM Products ");
while($list_of_xtras = mysqli_fetch_array($queryCatz)) {
$rowNum = 1;
echo '<ul style="border:2px solid purple;" class="theROW' . $rowNum . '">\r\n';
for($curr=0; $curr<2; $curr++){
echo '\t<li style="list-style:none;">' . $list_of_xtras[$curr] . '</li>\r\n';
}
echo '</ul>';
$rowNum++;
}

Похоже, вы просто ищете 2 результата, так что я не знаю, лучше ли здесь FOREACH. Может быть, просто цикл FOR.

Отредактируйте, после того как я увидела ваш комментарий. Похоже, вы хотите обернуть 10 результатов в UL. Для этого это было бы что-то вроде:

$rowNum = 1;
echo '<ul style="border:2px solid purple;" class="theROW' . $rowNum . '">\r\n';
$queryCatz = mysqli_query($cxn, "SELECT DISTINCT idBrand FROM Products ");
while($list_of_xtras = mysqli_fetch_array($queryCatz)) {
if($rowNum % 10 == 0){
echo '</ul><ul style="border:2px solid purple;" class="theROW' . $rowNum . '">\r\n';
}
echo '\t<li style="list-style:none;">' . $list_of_xtras[0] . '</li>\r\n';
$rowNum++;
}
echo "</ul>\r\n";
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]