Скрипт для вывода последних топиков на главную

Автор Tjom, 28 ноября 2008, 20:52:41

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

rols

GeorG
Я уже пробовал так и так, не помогает, digger говорит что похоже в другом файле где-то беда.


GeorG

Я пробовал, разделы исключаются. Если только у вас какая-то ещё, индивидуальная ошибка.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

digger®

Цитата: GeorG от 04 марта 2013, 22:15:42Там судя по функции, можно указать только исключаемые разделы, а не те из которых выводить. По-умолчанию, выводятся все разделы.
Верно! Только сейчас обратил внимание что в SSI от SMF1 не было параметра $ssi_include_boards в этой функции.
Пример в шапке дополнил в соответствии с этим.

rols

Скачал оригинал SSI.php установил, не помогает.
Сделал в нём изменения как на первой странице, не помогает.
Где ещё можно покопать?

rols

Цитата: GeorG от 04 марта 2013, 22:15:42
И указывать исключаемые разделы.

Так исключаемые разделы работают, не работает только выводимые разделы :)

GeorG

Функция и рассчитана только на исключение разделов. Я об этом и писал выше:
Цитата: GeorG от 04 марта 2013, 22:15:42функции, можно указать только исключаемые разделы, а не те из которых выводить. По-умолчанию, выводятся все разделы.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

rols

Цитата: GeorG от 05 марта 2013, 13:41:40Функция и рассчитана только на исключение разделов. Я об этом и писал выше:
Что-то я не понимаю, а зачем тогда строка? или это только для SMF 2?
  $ssi_include_boards = array(); // Перечислить через запятую id разделов, последние сообщения из которых отображать. Например, array (1, 2);

GeorG

Для версии форума - 2.0.x
Обновитесь и у вас будет работать. Или как вариант, под заказ, чтобы переделали функцию для вас лично - Предложения по работе.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

kak2z

для СМФ 2 и для тех кому достаточно такой информативности как в стандартном блоке вывода последних сообщений и для тех кто хочет меньше запросов для построения блока последних сообщений
вот как это выглядит на форуме http://koluchie-recepti.ru/ см. самый низ


include_once ''.$sourcedir.'/Subs-Recent.php';  //Вызываем файл с функцией (для SSI страниц, если вставляете на форум, то возможно не понадобится)
$latestPostOptions['number_posts'] = '30'; //Указываем количество выводимых новых сообщений (только четное число!!!)
$settings['number_recent_posts'] = $latestPostOptions['number_posts']; //Назначем переменные используемые в функции из файла Subs-Recent.php
$context['latest_posts'] = getLastPosts($latestPostOptions); //Создаем массив последних сообщений с помощью функции из файла Subs-Recent.php
// This is the "Recent Posts" bar.
if (!empty($settings['number_recent_posts']) && (!empty($context['latest_posts'])) ) {
echo '
<br />
<div class="title_barIC">
<h4 class="titlebg">
<span class="ie6_header floatleft">
<a href="', $scripturl, '?action=recent"><img class="icon" src="', $settings['images_url'], '/post/xx.gif" alt="Новые сообщения на форуме" /></a>
Новые сообщения на форуме
</span>
</h4>
</div>
<div class="hslice" id="recent_posts_content">';
// Формируем таблицу с сообщениями
echo '<table id="ic_recentposts" class="middletext" style="width: 100%; border-collapse: collapse;"><tbody>';
for ($i=0; $i<($latestPostOptions['number_posts']/2);$i++){
echo '
<tr>
<td style="width: 50%; letter-spacing: 0px; word-spacing: 0px; text-align: left; vertical-align: top; padding-left: 14px;"><strong>', $context['latest_posts'][$i]['link'], '</strong> ', $txt['by'], ' ', $context['latest_posts'][$i]['poster']['link'], ' (', $context['latest_posts'][$i]['board']['link'], ')</td>';
echo '
<td style="width: 50px; text-align: left; vertical-align: top; padding-left: 14px; letter-spacing: 0px; word-spacing: 0px;"><strong>', $context['latest_posts'][$i+($latestPostOptions['number_posts']/2)]['link'], '</strong> ', $txt['by'], ' ', $context['latest_posts'][$i+($latestPostOptions['number_posts']/2)]['poster']['link'], ' (', $context['latest_posts'][$i+($latestPostOptions['number_posts']/2)]['board']['link'], ')</td>
</tr>';
}
echo '</tbody></table>';
echo '
</div>';
}


Спасибо,  GeorG за подсказки)
Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

AlexDSV

#209
Привет всем. Уважаемый digger®, не могли бы вы мне подсказать в чем мои ошибки?
Излагаю: На основе этого кода-

<?php
// * dRecentTopics mod
    
require("/var/www/u1026439/data/www/мой_сайт/newforum/SSI.php");
    
$ssi_count_topics_left 4// Количество отображаемых последних сообщений в левой колонке
    
$ssi_count_topics_right 4// Количество отображаемых последних сообщений в правой колонке
    
$ssi_exclude_boards = array(2,3); // Перечислить через запятую id разделов, последние сообщения из которых не отображать. Например, array (1, 2);
    
$ssi_row_counter 0;
    
$ssi_recentTopics ssi_recentTopics($ssi_count_topics_left $ssi_count_topics_right$ssi_exclude_boards$ssi_include_boards'array');
    echo 
'<table border="2" width="100%" ><tr><td class="smalltext" >';
    foreach (
$ssi_recentTopics as $ssi_recentTopic) {
        
$ssi_row_counter++;
        echo 
'
         [+'
$ssi_recentTopic['num_replies'], '] '// количество ответов
        
$ssi_recentTopic['link']. ($ssi_recentTopic['new'] ? '<img src="/newforum/Themes/default/images/russian/new.gif" />' '').  // последнее сообщение
        
'<br />'// Разделитель                       
        
' от '$ssi_recentTopic['poster']['name'], // Ссылка на автора последнего сообщения             
        
' | '// Разделитель
        
$ssi_recentTopic['time'], // Дата последнего сообщения         
        
'<br />','<hr />';
         if (
$ssi_row_counter == $ssi_count_topics_left)
            echo 
'</td></td><td>';
    }
    echo 
'</td></tr></table>';
// dRecentTopics mod *
?>


Получилось это:


Версия форума 2.0.2 следовательно изменения вносить нужно только в этих строчках -

чуть ниже, где // Build the array

после

'topic' => $row['ID_TOPIC'],

добавить

'num_replies' => $row['numReplies'],


Я правильно понимаю??? Ну выводит только +, без количества ответов в теме и картинку new ставит там где тема прочитана, а не там где новая. Помогите пожалуйста дополнить код, до правильного отображения.
Так же хотел поинтересоваться как сделать ссылку на тему через <a href="' . $ssi_recentTopic['href'], что бы тема открывалась в новом окне, ставя это значение, код не работает. Спасибо.





digger®

Цитата: AlexDSV от 31 марта 2013, 11:49:36Ну выводит только +, без количества ответов в теме
SSI для SMF2 править не надо

Цитата: AlexDSV от 31 марта 2013, 11:49:36картинку new ставит там где тема прочитана
Добавил в пример вывод new

Цитата: AlexDSV от 31 марта 2013, 11:49:36что бы тема открывалась в новом окне
вместо
$ssi_recentTopic['link']
поставить
'<a target ="_blank" href="', $ssi_recentTopic['href'], '">', $ssi_recentTopic['short_subject'], '</a>'

GadZZillA

А аватарка выводится? Если нет, то это возможно реализовать? Если да - подскажите, как.

Aptemuda.ru

Ребята есть вопрос.
Есть такая строка <div class="hslice" id="recent_posts_content">
Отвечающая за вывод последнего сообщения.
У меня установлено 2 раза.

Как можно изменить ID на Class.
Так как ID можно вставлять только один раз, а Class можно вставлять сколько хочешь раз.
Моем случаи мне нужно вставить 2 раза.
Женский портал АРТЕМИДА
"Всe о роддомах и врачах роддомов Ростова-на-Дону"
http://aptemuda.ru

kak2z

Цитата: Aptemuda.ru от 26 апреля 2013, 11:50:24
Ребята есть вопрос.
Есть такая строка <div class="hslice" id="recent_posts_content">
Отвечающая за вывод последнего сообщения.
У меня установлено 2 раза.

Как можно изменить ID на Class.
Так как ID можно вставлять только один раз, а Class можно вставлять сколько хочешь раз.
Моем случаи мне нужно вставить 2 раза.
если вы про тот код что я выдрал с форума и частично сам допилил - то попробуйте вообще убрать id="recent_posts_content"  ))  думаю ничего страшного не произойдет. 
Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

GadZZillA

Вроде все правильно сделал, но выводится просто текст кода и ничего не происходит. Я вывожу код в виджете на главной странице сайта. Форум расположен в отдельном каталоге forum. Как и положено заключаю код в синтаксис <php ?>. В чем может быть проблема? SMF: 2.0.4


GadZZillA


Nob

#217
Моя скромная интерпретация варианта из шапки. ТЗ:
- по возможности уложиться в одну строку на айтем
- имя раздела, по сути, является избыточным в моем случае, и излишне усложняет картину, плюс пункт 1
- изменен порядок, так как важнее вначале видеть тему, а уж потом количество обновлений, плюс оно же в своих квадратных скобках служит прекрасным разделителем
- по той же причине иконка вынесена в самый старт (ХЗ почему, опера даже не пытается ловить их)
- добавлен стандартный балун "Новые сообщения и темы"
- шрифт изменен на первый подошедший из близлежащих с высотой 11px *см. апдейт

Known issues:
- косяк с отображением иконок в Опере (на уровне исходника)
- есть смысл поиграть со стилем, чтобы чуть раздвинуть строки в таблице *см. апдейт
- возможно, есть смысл добавить по колонке, дабы вынести автора в "моноспейс". Но, имхо, нет предела совершенству.
В общем, не судите строго. Выключенные блоки не удалял, но комментировал, на случай если кому захочетсявключить. Реализовано на *wce.by/forum *см.апдейт.

?>
<div class="cat_bar">
<h3 class="catbg">Новые сообщения и темы
</h3>
</div>

<?php
// * dRecentTopics mod, modified by Nob
    
require_once('SSI.php');
    
$ssi_count_topics_left 7// Количество отображаемых последних сообщений в левой колонке
    
$ssi_count_topics_right 7// Количество отображаемых последних сообщений в правой колонке
    
$ssi_exclude_boards = array(); // Перечислить через запятую id разделов, последние сообщения из которых не отображать. Например, array (1, 2)
    
$ssi_include_boards = array(); // Перечислить через запятую id разделов, последние сообщения из которых отображать. Например, array (1, 2). Работает только для SMF2
    
$ssi_row_counter 0;
    
$ssi_recentTopics ssi_recentTopics($ssi_count_topics_left $ssi_count_topics_right$ssi_exclude_boards'array'); // Для SMF1
    
$ssi_recentTopics ssi_recentTopics($ssi_count_topics_left $ssi_count_topics_right$ssi_exclude_boards$ssi_include_boards'array'); // Для SMF2
    
echo '<table border="0" width="100%"><tr><td class="middletext" valign="top">';
    foreach (
$ssi_recentTopics as $ssi_recentTopic) {
        
$ssi_row_counter++;
        echo 
!$ssi_recentTopic['new'] ? '<img src="/forum/ Themes/default/images/russian/new.gif" />&nbsp;' ''// Значок new
        
$ssi_recentTopic['link'], // Ссылка на последнее сообщение
'&nbsp;[+'$ssi_recentTopic['replies'], ']'// Количество ответов в теме
        //' > ', $ssi_recentTopic['board']['link'], // Ссылка на раздел  
        
' '// Разделитель                       
        
$ssi_recentTopic['time'], // Дата последнего сообщения               
        
' by '// Разделитель
        
$ssi_recentTopic['poster']['link'], // Ссылка на автора последнего сообщения
        
'<br />';
        if (
$ssi_row_counter == $ssi_count_topics_left)
            echo 
'</td><td  class="middletext" valign="top">';
    }
    echo 
'</td></tr></table>';
// dRecentTopics mod * 



Апдейт:
в index.css добавлен стиль

.middletext_top
{
font-size: 0.9em;
line-height: 1.4em;
font-family: verdana, sans-serif;
vertical-align: top;
}


Соответственно, в оснвном коде заменить middletext на него. Пример использует свой стиль.

motosimak

как можно увеличить период отображения последних тем, а то например выставляю 2 колонки по 10 тем из раздела, а он показывает только 6 до определенной даты, вместо 20

kolbasuha

Цитата: kak2z от 06 марта 2013, 14:31:52
для СМФ 2 и для тех кому достаточно такой информативности как в стандартном блоке вывода последних сообщений и для тех кто хочет меньше запросов для построения блока последних сообщений
вот как это выглядит на форуме http://koluchie-recepti.ru/ см. самый низ
...


Будьте добры, подскажите, после чего этот код вставлять? И можно ли сделать так, чтобы во второй таблице отображались сообщения только с одного единственного раздела и при этом были скрыты от гостей?
То есть нужно сделать две колонки последних сообщений, в одной - со всех разделов, кроме одного. Во второй - с одного единственного раздела.
Maneki neko в том году спрашивала уже, как это сделать, но, решив проблему, не поделилась решением  :-\

kak2z

Цитата: kolbasuha от 15 июля 2013, 22:08:53

Будьте добры, подскажите, после чего этот код вставлять? И можно ли сделать так, чтобы во второй таблице отображались сообщения только с одного единственного раздела и при этом были скрыты от гостей?
То есть нужно сделать две колонки последних сообщений, в одной - со всех разделов, кроме одного. Во второй - с одного единственного раздела.
Maneki neko в том году спрашивала уже, как это сделать, но, решив проблему, не поделилась решением  :-\

с тем скриптом что я выкладывал так не сделаешь... вообще сделать несложно.. но надо делать)) может будет у меня вдохновение - я сделаю)) но когда не знаю)
Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

Dj3000

К сожалению, не получается вывести на главную страницу сайта (не форума). Сам сайт работает на MODx.
Пробовал вставлять код <?php require("/home/site/public_html/forum/SSI.php"); ?> просто в шаблон, пробовал через сниппет. Просто ничего не отображается. Ни ошибок, ни текста... ничего. Никто не сталкивался? В чем может быть проблема?

digger®

Цитата: Dj3000 от 26 сентября 2013, 02:13:45
К сожалению, не получается вывести на главную страницу сайта (не форума). Сам сайт работает на MODx.
Пробовал вставлять код <?php require("/home/site/public_html/forum/SSI.php"); ?> просто в шаблон, пробовал через сниппет. Просто ничего не отображается. Ни ошибок, ни текста... ничего. Никто не сталкивался? В чем может быть проблема?
А ничего и не должно отобразиться. Это только api подключит, а действий никаких не вызвано.

Dj3000

Цитата: digger® от 26 сентября 2013, 03:26:14
А ничего и не должно отобразиться. Это только api подключит, а действий никаких не вызвано.
Я делаю сниппет с таким содержимым:
<?php
require_once('/home/site/public_html/forum/SSI.php');
ssi_recentTopics($num_recent 8$exclude_boards null$include_boards null$output_method 'echo');
?>

  Error:   preg_replace() [function.preg-replace]: Compilation failed: invalid UTF-8 string at offset 0   
  Error type/ Nr.:   Warning - 2   
  File:   /home/site/public_html/forum/Sources/Load.php   
  Line:   2126   
  Line 2126 source:    $text = preg_replace($censor_vulgar, $censor_proper, $text);


Или надо не так?

Bugo

Функцию нужно вызывать примерно так:
ssi_recentTopics(8, null, null, 'array');
То есть просто значения переменных подставлять, а не объявлять их заново.

Dj3000

Цитата: Bugo от 26 сентября 2013, 22:15:30
То есть просто значения переменных подставлять, а не объявлять их заново.
Здравствуйте. Сделал так.
<?php
require_once('/home/site/public_html/forum/SSI.php');
ssi_recentTopics(8nullnull'array');
?>

Ошибка:
ЦитироватьMODx encountered the following error while attempting to parse the requested resource:
« PHP Parse Error »
PHP error debug
  Error:   preg_replace() [function.preg-replace]: Compilation failed: invalid UTF-8 string at offset 0   
  Error type/ Nr.:   Warning - 2   
  File:   /home/site/public_html/forum/Sources/Load.php   
  Line:   2133   
  Line 2133 source:    $text = preg_replace($censor_vulgar, $censor_proper, $text);
:-\

digger®

Цитата: Dj3000 от 26 сентября 2013, 22:35:15
Здравствуйте. Сделал так.
<?php
require_once('/home/site/public_html/forum/SSI.php');
ssi_recentTopics(8nullnull'array');
?>

Ошибка:  :-\
У вас в базе часть таблиц не utf-8.
Как временный вариант, можете попробовать выключить цензуру в настройках форума.

Bugo

Я вам как пример привел, а вы так и оставили. Если выводить со стандартным оформлением, то вместо 'array' надо использовать 'echo'. А если выводите как массив, тогда надо так:
$topics = ssi_recentTopics(8, null, null, 'array');
foreach ($topics as $topic)
echo $topic['id'];
и т. д.

Dj3000

#228
del


Dj3000

Цитата: digger® от 27 сентября 2013, 01:05:35
Проблема с отображением названий месяцев в датах.
Там уже все сделано, как надо.
Впрочем, проблема с кодировкой не критична - я выше писал, в каком виде хотел бы выводить на сайт "последнее на форуме".
Только "название темы" - ник - дата/время.
Поможете реализовать?

digger®

Цитата: Dj3000 от 27 сентября 2013, 04:18:19
Там уже все сделано, как надо.
Впрочем, проблема с кодировкой не критична - я выше писал, в каком виде хотел бы выводить на сайт "последнее на форуме".
Только "название темы" - ник - дата/время.
Поможете реализовать?
В примере все разжевано построчно. Уберите несколько лишних строк и разделитель замените на свой.

Dj3000

В каком примере? В первом сообщении данной темы речь идет ведь не о выводе последних топиков на сайт...
Повторюсь, что в php, мягко говоря не спец.  ;)

GeorG

Цитата: Dj3000 от 27 сентября 2013, 05:18:46В первом сообщении данной темы речь идет ведь не о выводе последних топиков на сайт...
А в чём разница? php он везде одинаков.
Можете сделать на заказ. Обращайтесь...
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

Old_s

Цитата: digger® от 04 октября 2010, 02:53:11
Цитата: ConstantinЕсть ли возможность сократить длину темы к определенному числу знаков, при выводе в этом скрипте ?
Допустим тема называется "Скрипт для вывода последних топиков на главную" , сокращается к виду "Скрипт для вывода последних ..." ?
$smcFunc['substr']($ssi_recentTopic['subject'], 0, 100)
В топике уже задавали этот вопрос, но он так и остался без ответа.
Куда вставлять этот код?

kak2z

Цитата: Old_s от 17 ноября 2013, 11:21:40
$smcFunc['substr']($ssi_recentTopic['subject'], 0, 100)

В топике уже задавали этот вопрос, но он так и остался без ответа.
Куда вставлять этот код?

насколько я вижу надо заменить это
$ssi_recentTopic['subject']
Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

Old_s

kak2z, спасибо.

Не знаю, возможно неправильно было менять SSI.php, но изменил строку, и заголовки сократились:
'link' => '<a href="' . $scripturl . '?topic=' . $row['id_topic'] . '.msg' . $row['id_msg'] . '#new" rel="nofollow">' . shorten_subject($row['subject'], 37) . '</a>',

kak2z

Цитата: Old_s от 17 ноября 2013, 13:36:39
kak2z, спасибо.

Не знаю, возможно неправильно было менять SSI.php, но изменил строку, и заголовки сократились:
'link' => '<a href="' . $scripturl . '?topic=' . $row['id_topic'] . '.msg' . $row['id_msg'] . '#new" rel="nofollow">' . shorten_subject($row['subject'], 37) . '</a>',

SSI.php вообще лучше никогда не трогать и не прикасаться)
Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

Old_s

Цитата: kak2z от 17 ноября 2013, 13:37:40SSI.php вообще лучше никогда не трогать и не прикасаться)
Как сделать по-другому я, к сожалению, не догадался. Всего неделю форум обустраиваю, не освоился еще до конца, что тут к чему =)
В таком виде пока работает, ошибок в админке нет - и слава богу, может потом более изящное решение найдется.

alexz31

С помощью этого кода (где-то здесь брал его) вывожу последние сообщения на главную сайта.

<?php
// * dRecentTopics mod
require_once('/home/v/videostaru/public_html/forumz/SSI.php');
include_once 
''.$sourcedir.'/Subs-Recent.php';  //Вызываем файл с функцией (для SSI страниц, если вставляете на форум, то возможно не понадобится)
$latestPostOptions['number_posts'] = '6'//Указываем количество выводимых новых сообщений (только четное число!!!)
$settings['number_recent_posts'] = $latestPostOptions['number_posts']; //Назначем переменные используемые в функции из файла Subs-Recent.php
$context['latest_posts'] = getLastPosts($latestPostOptions); //Создаем массив последних сообщений с помощью функции из файла Subs-Recent.php
// This is the "Recent Posts" bar.
if (!empty($settings['number_recent_posts']) && (!empty($context['latest_posts'])) ) {
 echo 
'
 <br />
 <div class="title_barIC">
 <h4 align="center" class="titlebg">
 <a target ="_blank" href="'
$scripturl'?action=recent">Новые сообщения на форуме</a>
 </h4>
 </div>
 <div class="hslice" id="recent_posts_content">'
;
 
// Формируем таблицу с сообщениями
 
echo '<table id="ic_recentposts" class="smalltext" style="margin:0 auto; width: 1150px; border-collapse: collapse;"><tbody>';
 for (
$i=0$i<($latestPostOptions['number_posts']/2);$i++){
  echo 
'
  <tr>
  <td style="width: 50%; letter-spacing: 0px; word-spacing: 0px; text-align: left; vertical-align: top; padding-left: 14px;"><strong>'
$context['latest_posts'][$i]['link'], '</strong> '$txt['by'], ' '$context['latest_posts'][$i]['poster']['link'], ' ('$context['latest_posts'][$i]['board']['link'], ')</td>';
echo 
'
  <td style="width: 50px; text-align: left; vertical-align: top; padding-left: 14px; letter-spacing: 0px; word-spacing: 0px;"><strong>'
$context['latest_posts'][$i+($latestPostOptions['number_posts']/2)]['link'], '</strong> '$txt['by'], ' '$context['latest_posts'][$i+($latestPostOptions['number_posts']/2)]['poster']['link'], ' ('$context['latest_posts'][$i+($latestPostOptions['number_posts']/2)]['board']['link'], ')</td>
</tr>'
;
 }
 echo 
'</tbody></table>';
 echo 
'
 </div>'
;
}
// dRecentTopics mod * 
?>


Сам сайт на движке MaxSite CMS.
Всё выводится нормально, но появляется выше надпись типа ошибка PHP. Прилагаю скринн во вложении как это выглядит.
Пробовал разные коды и просто даже одну первую строчку вставлять,
<?phprequire_once('/home/v/videostaru/public_html/forumz/SSI.php');?>
тогда естественно ничего не появляется и всё равно та же ошибка, что и на скрине во вложении.
Если вставляю этот код на страницу не относящуюся к MaxSite CMS, то ошибок нет.
Поддержка на MaxSite CMS говорит, что все коды у них вставляются нормально и чтобы я смотрел код из sfm.
Получается что вроде как всё исправно по отдельности, а вместе не хочет работать.
Что делать, может подскажет кто где хоть копать.
И самое плохое, что я в PHP вообще очень слабо почти никак.

alexz31

Пробовал экспериментировал в SSI.php удалить строчку 168
trigger_error($txt['ssi_session_broken'], E_USER_NOTICE);
именно откуда как бы эта ошибка, в этом случае вообще всё нормально визуально отображается, но я понимаю, что ошибка это осталась и просто она не видна визуально и всё равно где-нибудь  проявляется, например там выше на скрине внизу показывает сколько памяти потребляет cms и сколько времени на это затрачивает, так вот в этом случае, т.е. при удалении строчки этой эти параметры не показываются.
Думаю, что может и  нагрузка возрасти, так как выполнение  как бы сессии не закончено.

Вставлять в CMS пробовал по разному, (вниз, вверх, в статью, в сайтбар, при помощи внутренней как бы автоматизации CMS, а также просто в код главной страницы index.php в том числе и строчку верхнюю, где SSI подключается на самый-самый верх главной страницы ставил и всегда меня преследовала одна и та же ошибка, что выше на скрине.

Gover

#241
Доброго времени суток.
Подскажите в чем может быть проблема? Все перерыл, кодировки перепроверил, разные варианты скрипта пробовал.
Во всех случаях одно и тоже - русские буквы в квадратиках, выводятся в кодировке 1251 (см. вложение)
Выводится под Joomla 3.2
Как много лишних слов, как мало лишниг денег...<br />Все победы в жизни начинаются с победы над собой.

alexz31

У меня форум, сайт, база данных форума, короче всё было в UTF8, а всё равно точно такие как у тебя квадратики с вопросиками были.
Потом где-то тут увидел на форуме, что в файл SSI.php  в 77-ую строчку надо  вписать mysql_query("SET NAMES UTF8;"); и мне это помогло.
Попробуй может тебе поможет тоже, если конечно всё у тебя в UTF8 кодировке.

Gover

Как много лишних слов, как мало лишниг денег...<br />Все победы в жизни начинаются с победы над собой.

колбаскин

Люди обновил версию движка до DLE 10.1
перестало выводить инфу через SSI.php

Раньше подключал так, в \engine\init.php
require_once '/usr/local/www/forum/SSI.php';

На новой версии не прокатило...
Может кто в курсе в чем проблема?


OXY

Спасибо digger и Tjom! После 5 прочтений, наступило "просветление". Учебник отличный. Все работает как надо, однако...не получилось вот это:
1.
Цитата: digger® от 26 февраля 2013, 13:19:04
Цитата: rols от 26 Февраля 2013, 02:37:27

    2) И как добавить жирный шрифт для имени?

Код: [Выделить]

    <b>, $ssi_recentTopic['poster']['link'], </b>
Никак этот простой тег не желает воспринимать - пишет "Ошибка шаблона"
2.
Просят сделать надпись над таблицей с последними темами - шапку "Последние обсуждаемые темы". Никак не соображу как (простите за тупость)

GeorG

Цитата: OXY от 21 марта 2014, 23:43:17Все работает как надо, однако...
Покажите тот скрипт, где работает как надо (именно тот, который у вас уже работает).

Цитата: OXY от 21 марта 2014, 23:43:17Просят сделать надпись над таблицей с последними темами - шапку "Последние обсуждаемые темы". Никак не соображу как (простите за тупость)
Вот например, из сообщения если код брать http://www.simplemachines.ru/index.php?topic=5567.msg127334#msg127334 там есть в начале такой отрывок:
<div class="cat_bar">
<h3 class="catbg">Новые сообщения и темы
</h3>
</div>

Вот там замените "Новые сообщения и темы", на то что вам надо.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

OXY

#247
Спасибо, GeorG! Воткнула код для шапки.
1. Раздел появился, но русский текст "Последние обсуждаемые темы" отображается квадратиками.

}
?>
<div class="cat_bar">
<h3 class="catbg">Последние обсуждаемые темы
</h3>
</div>
<?php

    // * dRecentTopics mod
        
require_once('SSI.php');
        
$ssi_count_topics_left 5// Количество отображаемых последних сообщений в левой колонке
        
$ssi_count_topics_right 5// Количество отображаемых последних сообщений в правой колонке
        
$ssi_exclude_boards = array(23); // Перечислить через запятую id разделов, последние сообщения из которых не отображать. Например, array (1, 2)
        
$ssi_include_boards = array(); // Перечислить через запятую id разделов, последние сообщения из которых отображать. Например, array (1, 2). Работает только для SMF2
        
$ssi_row_counter 0;
        
$ssi_recentTopics ssi_recentTopics($ssi_count_topics_left $ssi_count_topics_right$ssi_exclude_boards'array'); // Для SMF1
        
$ssi_recentTopics ssi_recentTopics($ssi_count_topics_left $ssi_count_topics_right$ssi_exclude_boards$ssi_include_boards'array'); // Для SMF2
        
echo '<table border="0" width="100%"><tr><td class="smalltext">';
        foreach (
$ssi_recentTopics as $ssi_recentTopic) {
            
$ssi_row_counter++;
            echo 
            
' - '// Разделитель
            
$ssi_recentTopic['link'], // Ссылка на последнее сообщение
            
!$ssi_recentTopic['new'] ? '<img src="/forum/Themes/default/images/russian-utf8/new.gif" />' ''// Значок new
            
' | '// Разделитель                       
           
            
$ssi_recentTopic['poster']['link'], // Ссылка на автора последнего сообщения
            
' ( '// Разделитель       
            
$ssi_recentTopic['board']['link'], // Ссылка на раздел    
            
' ) '// Разделитель           
            
'<br />';
            if (
$ssi_row_counter == $ssi_count_topics_left)
                echo 
'</td><td class="smalltext">';
        }
        echo 
'</td></tr></table>';
    
// dRecentTopics mod *  

2. По совету alexz31 вставила 77 строку в SSI.php - не помогло (кодировка сайта UTF8).
3. Ну и вопрос с жирным шрифтом всё ещё актуален.
Благодарю заранее

GeorG

1. Сохраните файл в который вставляете код в кодировке utf-8 (без BOM). Только обязательно без BOM!!!
2. Не понял, это вообще зачем?
3. Замените код в стоке:
            ' | ', // Разделитель                       
           
            $ssi_recentTopic['poster']['link'], // Ссылка на автора последнего сообщения
            ' ( ', // Разделитель


На этот:
            ' | <b>', // Разделитель                       
           
            $ssi_recentTopic['poster']['link'], // Ссылка на автора последнего сообщения
            '</b> ( ', // Разделитель
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

OXY

GeorG,  smitten благодарю безмерно! Задача решена!