Вывод на главную в JohnCMS v6.x.x

6.39K
.
Менделеев
# Support (27.03.2016 / 06:55)
Пожалуйста, Напишите код который выводит подфоруми форума на главную страницу
Вот в архиве код скачать zip
.
fanatos, Здесь пустой .тхт файл
Прикрепленные файлы:
.
Менделеев
/////////////////
        $count = mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_forum_files`" . ($rights >= 7 ? '' : " WHERE `del` != '1'")), 0);

        $req = mysql_query("SELECT `id`, `text`, `soft` FROM `forum` WHERE `type`='f' ORDER BY `realid`");
        $i = 0;
        while (($res = mysql_fetch_array($req)) !== false) {
            echo $i % 2 ? '<div class="list2">' : '<div class="list1">';
            $count = mysql_result(mysql_query("SELECT COUNT(*) FROM `forum` WHERE `type`='r' and `refid`='" . $res['id'] . "'"), 0);
            echo '<a href="forum/index.php?id=' . $res['id'] . '">' . $res['text'] . '</a> [' . $count . ']';
            if (!empty($res['soft']))
                echo '<div class="sub"><span class="gray">' . $res['soft'] . '</span></div>';
            echo '</div>';
            ++$i;
        }
.
fanatos, Это код выводит только категории. Мне нужна выводит с подфорумами.
.
Менделеев
вот с подфорумами

////////////////////////////////////////////////////////////
        // Список Категорий форума                                //
        ////////////////////////////////////////////////////////////
        $count = mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_forum_files`" . ($rights >= 7 ? '' : " WHERE `del` != '1'")), 0);
        echo '<p>' . counters::forum_new(1) . '</p>' .
            '<div class="phdr"><b>' . $lng['forum'] . '</b></div>' .
            '<div class="topmenu"><a href="search.php">' . $lng['search'] . '</a> | <a href="index.php?act=files">' . $lng_forum['files_forum'] . '</a> <span class="red">(' . $count . ')</span></div>';
        $req = mysql_query("SELECT `id`, `text`, `soft` FROM `forum` WHERE `type`='f' ORDER BY `realid`");
        $i = 0;
        while (($res = mysql_fetch_array($req)) !== false) {
            echo $i % 2 ? '<div class="phdr">' : '<div class="phdr">';
            $count = mysql_result(mysql_query("SELECT COUNT(*) FROM `forum` WHERE `type`='r' and `refid`='" . $res['id'] . "'"), 0);
            echo '<a href="index.php?id=' . $res['id'] . '">' . $res['text'] . '</a> [' . $count . ']';
            if (!empty($res['soft']))
                echo '<div class="sub"><span class="gray">' . $res['soft'] . '</span></div>';
            echo '</div>';
//////////////////////////////Разделы/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
$razdel = mysql_query("SELECT * FROM `forum` WHERE `type` = 'r' AND `refid` = '".$res['id']."' ORDER BY `realid`");

while($row_r = mysql_fetch_assoc($razdel)){
$coltem = mysql_query("SELECT COUNT(*) FROM `forum` WHERE `type`='t' AND `refid`='" . $row_r['id'] . "'" . ($rights >= 7 ? '' : " AND `close` != '1'"));
                    $coltem1 = mysql_result($coltem, 0);
echo ($o % 2) ? '<div class="list2">' : '<div class="list1">';
echo "<a href='index.php?id=".$row_r['id']."'>".$row_r['text']."</a>";
 if ($coltem1)
                        echo " [$coltem1]";

 if (!empty($res['soft']))
                        echo '<div class="phdr"><span class="gray">' . $row_r['soft'] . '</span>';
                    echo '</div>';
echo "</div>";
++$o;
}
 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
            ++$i;


как выглядит
Прикрепленные файлы:
.
Fаnаtоs, Мне надо выводит на главную
.
Менделеев
# Support (27.03.2016 / 09:34)
Fаnаtоs, Мне надо выводит на главную
делаешь файл lol.php

c этим содержимым (+/-)


и в mainmenu.php include 'forum/lol.php';
.
fanatos, Спасибо !
.
MARAZM
КИДАЛА!!! Дел не иметь!
# ValekS (27.03.2016 / 01:01)
Кстати можно было бы упростить: в функцию передавать ИД юзера, который у нас всегда есть - $user_id и в самой функции делать запрос в БД, что бы вытащить данные этого юзера.
В ядре уже есть данные о юзере $datauser, проще говоря $user_id задается через $datauser['id']
.
Ей 25
# MARAZM (27.03.2016 / 17:08)
В ядре уже есть данные о юзере $datauser, проще говоря $user_id задается через $datauser['id']
Нет, это не то немного. $datauser возвращает данные текущего юзера. Т.Е. по сути $user_id == $datauser['id'] как ты написал.
Да, если нам надо вывести текущего юзера, то проблем нет:
functions::display_user($datauser);
А если надо вывести какого то юзера по ИД ? Для чего эта функция в основном и применяется.
Если сделать как я выше написал, с передачей ИД юзера функции, то все легко и просто:
functions::display_user($uid);
Не надо никаких запросов в базу и т.д.
Всего: 190