ExBB Community » Файловый ExBB » Модификации и дополнения » Использование PHP кода в сообщениях для администраторов

Страниц (1): [1]
 

1. WebMaster - 17 мая 2014 — 14:56 - перейти к сообщению
Иногда есть необходимость вставить в сообщение динамический блок, например выводить разный текст в зависимости от обстоятельств. Именно в таких случаях должно помочь это дополнение.

Примеры использования:

CODE:

[phpcode]
return ‘Hello, world!’;
[/phpcode]

[phpcode]
global $fm;
if ($fm->user['status'] == 'ad') {
return 'Text for Admins!!';
}
[/phpcode]
2. Parapsixolog - 17 мая 2014 — 23:23 - перейти к сообщению
Николай, спасибо, работает! Улыбка

Вот только пример выше
CODE:

[phpcode]
return ‘Hello, world!’;
[/phpcode]


Не корректный. Наверное скобки не те. С таким примером нотис вылезает:

CODE:
Parse error: syntax error, unexpected ',' in Z:\home\exbb.ru\www\include\fm.class.php(1034) : runtime-created function(3) : eval()'d code on line 2


Строка 1034 у меня:

CODE:
),$string);
3. WebMaster - 18 мая 2014 — 06:23 - перейти к сообщению
CODE:
[phpcode]
return 'Hello world!';
[/phpcode]
4. 1Bot - 18 мая 2014 — 06:56 - перейти к сообщению
WebMaster
Спасибо за полезный мод!
Позволяет реже менять основной код для приятных динамических вставок на php.
Единственное замечание: чтобы не выдавало ошибок из-за возможно неправильного кода во вставке лучше их экранировать и заменить
CODE:
eval($matches[1])
на
CODE:
@eval($matches[1])
5. Parapsixolog - 21 мая 2014 — 23:45 - перейти к сообщению
Мод то нужный, но многое не работает в нём. Например мне не удалось заставить работать include и require В случае с include просто на странице пустота. А вот с include серьёзнее. Вообще белый лист при попытке захода в тему. То есть тема пропала. Огорчение
6. WebMaster - 22 мая 2014 — 10:08 - перейти к сообщению
вероятно проблема с путями. Можно попробовать использовать абсолютный путь
7. Parapsixolog - 23 мая 2014 — 12:12 - перейти к сообщению
WebMaster пишет:
Можно попробовать использовать абсолютный путь


Абсолютный путь, это как? Вот такой путь :

CODE:
http://exbb.info/community/index.php


абсолютный?
8. WebMaster - 23 мая 2014 — 12:29 - перейти к сообщению
Нет, типа D:/server/sites/exbb/www/file.php
Можно использовать include $_SERVER['DOCUMENT_ROOT'].'/file.php';
9. Parapsixolog - 23 мая 2014 — 23:31 - перейти к сообщению
WebMaster пишет:
Нет, типа D:/server/sites/exbb/www/file.php


К сожалению не помогло.

WebMaster пишет:
Можно использовать include $_SERVER['DOCUMENT_ROOT'].'/file.php';


А вот так запустилось. Но коряво! Эффект как при запуске файла file.php отдельно. Сам форум пропал. И потом так запускать не совсем удобно. Если у меня файл на под домене, то как здесь быть?
10. WebMaster - 24 мая 2014 — 05:55 - перейти к сообщению
Цитата:
Если у меня файл на под домене, то как здесь быть?

В современных версиях PHP запрещено подключение удалённых PHP сценариев. Если папка поддомена в том же каталоге, что и основной сайт, то можно подключать оттуда...

Цитата:
Эффект как при запуске файла file.php отдельно

Нельзя echo использовать... Если всё таки нужно, то можно делать так:
CODE:

ob_start();
// Всякий код с echo
echo 'Привет, мир!!!';
$content = ob_get_contents();
ob_end_clean();

return $content;
11. Parapsixolog - 25 мая 2014 — 12:30 - перейти к сообщению
WebMaster пишет:
Нельзя echo использовать... Если всё таки нужно, то можно делать так:


Спасибо за подсказку. Приму к сведению. Вот только конкретно в нашей ситуации, при чем здесь echo? Речь же идёт про include и require. И если include ещё как оказалось можно запустить через прописывание прямого пути файла, но при этом весь форум пропадает, и на странице только сам исполняемый код работает. Эффект как при запуске файла напрямую.

А с require просто белый лист.
12. WebMaster - 25 мая 2014 — 15:36 - перейти к сообщению
Нужно смотреть сам подключаемый код. Может быть в нём есть exit или die. Тогда и будет подобный эффект
13. Parapsixolog - 4 июня 2014 — 18:30 - перейти к сообщению
WebMaster пишет:
Нужно смотреть сам подключаемый код. Может быть в нём есть exit или die. Тогда и будет подобный эффект


Нет, только require и ссылка на файл. больше там ни чего нет
14. variant0 - 7 сентября 2014 — 17:49 - перейти к сообщению
После установки мода пользователи (не администраторы) не могут воспользоваться кнопкой Ответ в любом посте, как с тэгом, так и без тэга [phpcode]. При нажатии на Ответ не выводится окно для ввода сообщения, смотрите рисунок



Кроме того, в обзоре, который выводится при ответе на пост, сообщение с тэгом [phpcode] выводится не обработанным


Яндекс.Метрика   

Powered by ExBB
[Script Execution time: 0.0241]     [ ]