[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вывод 2 последних статей через foreach
alekseykk
Всем привет! потихоньку изучаю php, сейчас особенно каша после Попова...так вот...

Цель - вывести все категории из базы, а под каждой из этих категорий должен быть вывод новостей, относящихся к этим категориям.

$resultat = mysqli_query($link, "SELECT `id`,`cat`,`title` FROM `categories`");
$categories = mysqli_fetch_all($resultat, MYSQLI_ASSOC);

$result = mysqli_query($link, "SELECT `id`,`cat`,`title` FROM `data`");
$data = mysqli_fetch_all($result, MYSQLI_ASSOC);

foreach($categories as $ca) {
echo '<a href=#">'.$ca['title'].'</a><br>';

foreach ($data as $single){
if ($single['cat'] == $ca['cat']){
echo '<a href=#">'.$single['title'].'</a><br>';
}
}
echo '</div>';
}


НО как сделать, чтобы под каждой категорией выводились последние две новости? а не все как сейчас...пробовал вот так -

$result = mysqli_query($link, "SELECT `id``,`cat`,`title` FROM `data` ORDER BY `id`DESC LIMIT 2");


но ничего не вышло( как можно реализовать?
Hello
$result = mysqli_query($link, "SELECT `id`,`cat`,`title` FROM `data` ORDER BY `id` DESC"); 
$data = mysqli_fetch_all($result, MYSQLI_ASSOC);

foreach($categories as $ca) {
echo '<a href=#">'.$ca['title'].'</a><br>';

$limit = 2;
foreach ($data as $single){
if ($single['cat'] == $ca['cat'] && $limit-- > 0){
echo '<a href=#">'.$single['title'].'</a><br>';
}
}
echo '</div>';
}


_____________
VPS от 5$, первые 2 месяца - бесплатно.
alekseykk
Hello

Большое спасибо! то есть через $limit = 2; задали лимит на вывод двух новостей?, а здесь к проверке добавили $limit-- > 0, не особо понял значение, что он делает? черт не могу вспомнить про стрелочки laugh.gif
Winston
Декремент.
На каждой итерации $limit будет уменьшаться на 1, и проверка, что если $limit после декремента все еще больше нуля, то выводим название.
alekseykk
Winston

Понял, спасибо!)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.