Вывод информации из базы

Rommax

Проверенные
Сообщения
1,342
Реакции
502
Баллы
8,215
Возможно ли вывести каким то образом данные из этой таблицы ?
Имеется ввиду что таблицу создал вручную и хочу вывести в сайдбаре .
Если это реально то объясните для чайника как это делается
upload_2017-2-4_21-20-16.png
 
Добавляем в XenForo_Model_Forum (library/Xenforo/Model/Forum.php) новую функцию, которая будет парсить информацию из таблицы и вводить ее в виде ассоциативного массива.


Код:
public function getInfoFromSafelist()
{
  return $this->_getDb()->fetchAll('SELECT * FROM safelist');
}

Далее изменим actionIndex в XenForo_ControllerPublic_Forum (library/Xenforo/ControllerPublic/Forum.php:
Перед этим $viewParams = array(

Пишем:
$rows = $this->_getForumModel()->getInfoFromSafelist();

Всё сохраняем, заливаем обратно на сервер.

И добавляем наш массив в $viewParams (его элементы будут доступны для просмотра через шаблон)

Выглядеть это должно примерно так:
Y2HECjd.png

Дальше в шаблоне сайдбара выводим информацию
Код:
<xen:foreach loop="$rows_from_safelist" value="$row">
<div>ID: {$row.id}, nickname: {$row.name}, server: {$row.server}</div>
</xen:foreach>
 
Последнее редактирование:
Спасибо попробую )

А если создать отдельную страницу сделать ? То какое содержимое ? Как создать отдельные страницы с нужными данными из базы ?
Получилось в сайдбар )
upload_2017-2-4_23-1-59.png
 
grisha2217, нет никакого смысла делать присвоение лишней переменной, можно сразу топорно написать:
PHP:
        $viewParams = array(
            'rows_from_safelist' => $this->_getForumModel()->getInfoFromSafelist(),
Но лучше бы конечно так вообще не делать (прямые правки в файлах) + нет кеширования.
 
То какое содержимое ? Как создать отдельные страницы с нужными данными из базы ?
Есть такой автор, AndyB, от него есть достаточно простые дополнения вроде History, там как раз отдельная таблица и вывод информации из нее на страницу. Но не так топорно и более правильно. Посмотрите, может получится самостоятельно разобраться, когда-то надо начинать.
 
прямые правки в файлах
Я бы сделал отдельными все файлы так как планируется много инфы вывести но знаний ноль )
Потихоньку бы вникал в это и может что получилось бы ) Вывел этот кусок и уверенности тьма )

Есть такой автор, AndyB, от него есть достаточно простые дополнения вроде History
Не могу найти этого автора )
 
Exile, напишите же гайд про кеширование данных, будем использовать!
Там все банально:
PHP:
/**
* Имя для нашей переменной кеша
*/
$cacheId = 'my_cache';
/**
* Наша переменная с которой потом будет работать
*/
$var = '';

/**
* Получаем объект для кеширования движка
*/
if ($cacheObject = XenForo_Application::getCache()) {
    /**
     * Ищем нашу переменную в кеше
     */
    if ($cache = $cacheObject->load($cacheId, true)) {
        /**
         * Если нашли, присоили в переменную $var
         */
        $var = $cache;
    } else {
        /**
         * Если не нашли, то тут получаем данные и т.п. в переменную $var и сохраняем ее в кеш
         */
        $var = 'cached data';
        $cacheObject->save($var, $cacheId, array(), 86400);
    }
}

/**
* Используем переменную $var как хотим тут
*/
echo $var;

86400 - время кеширования в секундах.
 
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу