Подскажите пожалуйста, как можно пропустить одну запись (если совпадает id) и вместо нее добавить следующую запись.
Есть блок с выводом последних 5 новостей, при просмотре одной новости. В этом блоке выводятся все последние новости с указанным лимитом в 5 новостей.
Если отрываю любую из последних 5 новостей, соответственно в блоке "последние новости" есть и эта открытая новость (что не совсем логично, показывать ее, на этой же странице).
Можно ли как-то если ID текущей открытой новости совпадает с ID в блоке последних новостей, пропустить ее и добавить к списку еще одну запись чтобы по прежнему в блоке оставалось 5 новостей?
Сейчас работает так:
foreach($mod->related as $related){
if ($related->id == $id) {
continue;
}
//related
}
1) в настройках указан лимит - 5 новостей
2) $related->id - это id последних новостей в блоке
3) $id - это ID текущей открытой новости
В данном случае, новость в блоке новостей не дублируется (пропускает). Но в итоге отображается не 5 новостей а 4 новости (т.к. одну пропускает из-за совпадения ID). Соответственно если открыть 6 новость, там будет отображаться их 5шт, т.к. ID не будет совпадать.
Как вариант можно указать лимит в 6 новостей, но тогда при открытии новостей после 6 записи в блоке будет их уже 7шт.
Как можно реализовать чтобы всегда было 5 новостей, но при этом не дублировалась новость в блоке.
Спасибо.
Сделай цикл for и лимит в 6 записей. Или ограничьте на уровне БД.
for ($i = 0; $i < count($mod->related) && $i < 5; $i++) {
$related = $mod->related[$i];
if($related->id == $id)
continue;
// related
}
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Вот простой код, который подсоединяется к бесплатным проксям (упрощенная версия, ничего не делает, только воспроизводит ошибку)
Всем доброго времени сутокЕсть див,туда вывожу через нажатие кнопок числа,записывается это все как строка
Отправляю запрос в базу, кликаю на кнопку сохранить отрабатывает beforeSend лоадер, и запись в базу доходит и записывается, но сам ajax возвращает...