Перейти к содержанию
visi

Php код в описании категории

Рекомендуемые сообщения

Здравствуйте!

Подскажите как реализовать возможность выполнения пхп-кода в описании категории, чтобы можно было в текстовом редакторе написать что-то типа {php}echo 1;{/php} 

Спасибо за любую наводку в этом вопросе. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хотелось бы понять тайный смысл сей необходимости

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На определенной категории получить из базы курс валют {php}echo select kurs from db;{/php} и чтобы это было в описании

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На определенной категории получить из базы курс валют {php}echo select kurs from db;{/php} и чтобы это было в описании

Я бы сказал, что это не есть хорошо.

А что Вы собственно хотите организовать то, непонятно...Для каких целей ,если не секрет, делать "На определенной категории получить из базы курс валют" ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Делайте Ваши запросы согласно архитектуре и отправляете переменную в шаблон, в описании помещаете пустой див с определенным id, выводимую переменную с помощью jQuery помещаете в этот див, профит. Если переменную надо выводить в определенной категории в контроллере используем условие на id этой чудесной категории. Это если надо выполнить задачу, а не мечтать о php в редакторе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
<!-- *********************************************************************************** -->
<!-- *** Part of OpenShop project: http://OpenShop.org.ua (c) MaxD                   *** -->
<!-- *********************************************************************************** -->
<!-- Redistribution in any form without written permission is prohibited.                -->

<modification>
	<id><![CDATA[Executes PHP code included into info pages, text blocks, products and categories descriptions]]></id>
	<version><![CDATA[1.7]]></version>
	<vqmver><![CDATA[]]></vqmver>
	<author><![CDATA[MaxD http://OpenShop.org.ua]]></author>

    <file name="catalog/view/theme/*/template/information/information.tpl">
		<operation>
			<search position="replace"><![CDATA[ echo $description ]]></search>
			<add><![CDATA[ eval('?>'.$description.'<?php ') ]]></add>
		</operation>
	</file>

    <file name="catalog/view/theme/*/template/product/product.tpl">
        <operation>
            <search position="replace"><![CDATA[ echo $description ]]></search>
            <add><![CDATA[ eval('?>'.$description.'<?php ') ]]></add>
        </operation>
    </file>

    <file name="catalog/view/theme/*/template/product/category.tpl">
        <operation>
            <search position="replace"><![CDATA[ echo $description ]]></search>
            <add><![CDATA[ eval('?>'.$description.'<?php ') ]]></add>
        </operation>
    </file>

    <file name="catalog/view/theme/*/template/module/welcome.tpl">
        <operation>
            <search position="replace"><![CDATA[ echo $message ]]></search>
            <add><![CDATA[ eval('?>'.$message.'<?php ') ]]></add>
        </operation>
    </file>
	
</modification>

Или же тут выкачать...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Baco, спасибо, помогло. Правда пришлось еще немного редактор подпилить, чтобы он нормально дружил с php-кодом (добавив плагин Show Protected для CKK Editor или подобный). Всем спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

запасаемся попкорном и ждем нытья о взломах.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

запасаемся попкорном и ждем нытья о взломах.

а насколько данный метод не безопасен?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

запасаемся попкорном и ждем нытья о взломах.

 

Да, скорее всего надо попкорн покупать. Как то стремно eval использовать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну... решение не моё, я так, ответ по сути ТС написал, хоть и объяснили, что не здорово такое делать, а уж ему (ТС) - самому уже выбирать между нуждой и безопасностью...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

к слову,

в php произвольный код можно выполнить не только c помощью eval

assert()
preg_replace('/.*/e',...)
create_function()
include()
include_once()
require()
require_once()
"function"("args");

на хабре был описан интересный случай взлома через логи

злоумышленник нашел уязвимость LFI (Local File Inclusion), с помощью которой можно было includ'ить локальный файл на сервере.

затем в одном из запросов подменил user-agent своим кодом <?php ...?>, который попал в лог-файл и с помощью уязвимости этот файл выполнил )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.