#php
#php
Вопрос:
Дело в том, что в переменной или условии $DivCol
он показывает мне два старых результата, в то время как он $DivColGrid
показывает мне остальные самые последние результаты, скажем, предположим, что у меня есть 5 зарегистрированных продуктов, чтобы всегда показывать самые последние продукты, которым передается условие SQL/MYSQL-> DESC
, поэтому продукт 1, 2
отображается, $DivCol
пока он 3, 4, 5
доступен.показано на $DivColGrid
.
В заключение я хочу показать самые последние добавленные продукты, но начиная с $DivCol
, то есть он $DivCol
должен содержать продукты 5, 4
, находящиеся 3, 2, 1
внутри $DivColGrid
.
$DivCol = '<div class="col-1">';
$DivColGrid = '<div class="col-grid">';
$i=1;
while ($stmt->fetch()) {
if ($i%2 == 0) {
$DivCol .= '<div class="post">
'.$mini_title.'
</div>';
$first = false;
} else {
$DivColGrid .= '<div class="post">
'.$mini_title.'
</div>';
}
$i ;
}
$DivColGrid .= '</div>';
$DivCol .= '</div>';
echo $DivCol.$DivColGrid;
Комментарии:
1. Откуда вы знаете, что такое старое и что такое новое? Кроме того, кода, который вы показываете, (1) недостаточно для воспроизведения (2) просто выполняет выбор четной / нечетной строки.
2. @sal потому что уже в запросе mysql я уже передаю условие DESC, но мне нужно отсортировать его внутри цикла
3. @sal здесь
if ($i%2 == 0)
я показываю две статьи в другом контейнере, то есть это другой дизайн, поэтому это условие4. @sal Все, что я хочу, это показать здесь продукты 5 и 4
$DivCol
, а остальные продукты здесь$DivColGrid
в этом случае будут 3, 2, 1.5. Непонятно, зачем вам нужно сортировать внутри цикла, если вы уже отсортировали их из запроса. Можете ли вы показать фактический результат и каков фактический желаемый результат?
Ответ №1:
Из того, что вы описали, у вас есть 5 продуктов, возвращаемых SQL-запросом, уже отсортированных в обратном порядке (как вы хотите), и теперь все, что вам нужно, это выбрать первые два из отсортированного списка и поместить их в первый div-контейнер, а остальные в другой. Если все правильно, то этого должно быть достаточно:
$DivCol = '<div class="col-1">';
$DivColGrid = '<div class="col-grid">';
$i=1;
while ($stmt->fetch()) {
if ($i <= 2) { // essentially, only pick the first two
$DivCol .= '<div class="post">
'.$mini_title.'
</div>';
$first = false;
} else {
$DivColGrid .= '<div class="post">
'.$mini_title.'
</div>';
}
$i ;
}
$DivColGrid .= '</div>';
$DivCol .= '</div>';
echo $DivCol.$DivColGrid;