Вывод тем форума и библиотеки на главную

2.71K
.

а вообще проще так, ибо там навелосипедил гг

+++ (+/-)
function LastNotes($switch = 'F', $lmt = 5) {
    if (($switch == 'F' || $switch == 'L') && $lmt > 0) {
        if ($switch == 'F')
            $sql = "SELECT COUNT(*) FROM forum WHERE type = 't'";
        elseif ($switch == 'L')
            $sql = "SELECT COUNT(*) FROM library_texts";
        $total = mysql_result(mysql_query($sql), 0);
        if ($total) {
            if ($switch == 'F') {
                $out = '<div class="bmenu">Последние <b>'. $lmt .'</b> тем форума</div>';
                $sql = "SELECT forum.id, forum.text, users.name FROM forum JOIN users ON forum.user_id = users.id AND type = 't' ORDER BY time DESC LIMIT $lmt";
            } else {
                $out = '<div class="bmenu">Последние <b>'. $lmt .'</b> статей библиотеки</div>';
                $sql = "SELECT id, uploader_id, uploader, name, count_views, count_comments FROM library_texts 
            WHERE premod = 1 ORDER BY time DESC LIMIT $lmt";
            }
            $res = mysql_query($sql) or die (mysql_error());
            $i = 0;
            while ($row = mysql_fetch_assoc($res)) {
                if ($switch == 'F') {
                    $out .= ($i % 2 ? '<div class="list2">' : '<div class="list1">') .
                        '<a href="/forum/?id='. $row['id'] .'">'. $row['text'] .'</a>&nbsp;(' . $row['name'] . ')</div>';
                } else {
                    $color_views = ($row['count_views'] > 0 ? 'green' : 'red');
                    $color_comments = ($row['count_comments'] > 0 ? 'green' : 'red');
                    $out .= ($i % 2 ? '<div class="list2">' : '<div class="list1">') .
                        '<a href="/library/?id='. $row['id'] .'">'. $row['name'] .'</a>' .
                        '<div class="topmenu">просмотры: <span style="color:'. $color_views .'">'.
                        $row['count_views'] .'</span> комментарии: <span style="color:'. $color_comments .'">'.
                        $row['count_comments'] .'</span> автор: 
                <a href="users/profile.php?user=' . $row['uploader_id'] . '">' . $row['uploader'] . '</a></div></div>';
                }
                $i++;
            }
        } else {
            $out = '<div class="gmenu">Пока что ' . ($switch == 'F' ? 'форум пустой' : 'библиотека пустая') . '</div>';
        }
    } else {
        $out = FALSE;
    }
    return $out;
}
.

WPeople, в смысле удаляем? Эта функция дает возможность выводить последние темы форума и последние статьи библиотеки. Это уже от твоего желания зависит что тебе нужно. Если тебе нужен вывод только последних тем форума, то пожалуйста, укажи первый параметр функции "F". Эдуард же не раз пример показывал.

echo LastNotes('F', 5)
// Первый параметр обозначает что мы хотим выводить, он может принимать 2 значения (F - темы форума, L - статьи библы)
// Второй параметр спрашивает сколько записей выводить, можешь хоть 100500 указать, только обязательно указывать число больше 0
.

дайте отдельный код который выведет только библиотеку!

.

Бери код из последнего поста , и при выводе указывай только библиотеку

echo LastNotes('L', 5);
.
# ДоХтор (25.09.2016 / 21:25)
Бери код из последнего поста , и при выводе указывай только библиотеку echo LastNotes('L', 5);
вставил код вот сюда
но ничего не выводит(
.

EMINEM, скопируй сюда свой код в точности, как ты его прописал.

.
EMINEM

ДоХтор,

* (+/-)
echo '<br><div class="phdr"><div class="r9">'; //блок
        echo '<b>Сериалы</b>'; //название
        echo '</div></div>
        <div class="news">'; //код
echo 'В работе...';

function LastNotes($switch = 'F', $lmt = 5) {
    if (($switch == 'F' || $switch == 'L') && $lmt > 0) {
        if ($switch == 'F')
            $sql = "SELECT COUNT(*) FROM forum WHERE type = 't'";
        elseif ($switch == 'L')
            $sql = "SELECT COUNT(*) FROM library_texts";
        $total = mysql_result(mysql_query($sql), 0);
        if ($total) {
            if ($switch == 'F') {
                $out = '<div class="bmenu">Последние <b>'. $lmt .'</b> тем форума</div>';
                $sql = "SELECT forum.id, forum.text, users.name FROM forum JOIN users ON forum.user_id = users.id AND type = 't' ORDER BY time DESC LIMIT $lmt";
            } else {
                $out = '<div class="bmenu">Последние <b>'. $lmt .'</b> статей библиотеки</div>';
                $sql = "SELECT id, uploader_id, uploader, name, count_views, count_comments FROM library_texts 
            WHERE premod = 1 ORDER BY time DESC LIMIT $lmt";
            }
            $res = mysql_query($sql) or die (mysql_error());
            $i = 0;
            while ($row = mysql_fetch_assoc($res)) {
                if ($switch == 'F') {
                    $out .= ($i % 2 ? '<div class="list2">' : '<div class="list1">') .
                        '<a href="/forum/?id='. $row['id'] .'">'. $row['text'] .'</a>&nbsp;(' . $row['name'] . ')</div>';
                } else {
                    $color_views = ($row['count_views'] > 0 ? 'green' : 'red');
                    $color_comments = ($row['count_comments'] > 0 ? 'green' : 'red');
                    $out .= ($i % 2 ? '<div class="list2">' : '<div class="list1">') .
                        '<a href="/library/?id='. $row['id'] .'">'. $row['name'] .'</a>' .
                        '<div class="topmenu">просмотры: <span style="color:'. $color_views .'">'.
                        $row['count_views'] .'</span> комментарии: <span style="color:'. $color_comments .'">'.
                        $row['count_comments'] .'</span> автор: 
                <a href="users/profile.php?user=' . $row['uploader_id'] . '">' . $row['uploader'] . '</a></div></div>';
                }
                $i++;
            }
        } else {
            $out = '<div class="gmenu">Пока что ' . ($switch == 'F' ? 'форум пустой' : 'библиотека пустая') . '</div>';
        }
    } else {
        $out = FALSE;
    }
    return $out;
}

        echo '</div>';
.

EMINEM,

А вызов функции с параметрами кто за тебя напишет? ) (+/-)
echo LastNotes('L', 5);
.

ДоХтор, сработало спасибо!

.
# ДоХтор (29.06.2016 / 00:51)
Код не рефакторил. При необходимости - дописывайте выводы ещё откуда понадобится

function frmLbr($frmLmt = 5, $lbrLmt = 5) {
$forum = '<div class="bmenu">Последние '. $frmLmt .' тем форума</di
Куда его вписывать, и в какую строку?
Всего: 77