goodwin74 Posted October 17, 2013 Share Posted October 17, 2013 (edited) Версия PrestaShop 1.5.4.1. Вызов функци: Configuration::updateValue('block1', (($_POST['block1input'] != '') ? $_POST['block1input']: ''),true); c учетом что в поле block1input присутствуют HTML теги, записывает текст обрезая теги. Как исправить, подскажите, пожалуйста? Буду очень благодарен! Edited October 18, 2013 by goodwin74 (see edit history) Link to comment Share on other sites More sharing options...
absent Posted October 17, 2013 Share Posted October 17, 2013 Версия PrestaShop 1.5.4.1. Вызов функци: Configuration::updateValue('block1', (($_POST['block1input'] != '') ? $_POST['block1input']: ''),true); c учетом что в поле block1input присутствуют HTML теги, записывает текст обрезая теги. Как исправить, подскажите, пожалуйста? Буду очень благодарен! что на выходе надо получить? Link to comment Share on other sites More sharing options...
goodwin74 Posted October 17, 2013 Author Share Posted October 17, 2013 что на выходе надо получить? На выходе значение конфигурации выводится в шаблоне в блоке. Вообще по сути надо реализовать переход на след строку. Хотел сделать добавление <br>, но оказалось теги режет функция что с true что с false. Link to comment Share on other sites More sharing options...
absent Posted October 17, 2013 Share Posted October 17, 2013 На выходе значение конфигурации выводится в шаблоне в блоке. Вообще по сути надо реализовать переход на след строку. Хотел сделать добавление <br>, но оказалось теги режет функция что с true что с false. сохраняй в бд как вариант)) всё равно идёт в бд. и не <br> а <br/> пиши или \n попробуй Link to comment Share on other sites More sharing options...
goodwin74 Posted October 17, 2013 Author Share Posted October 17, 2013 сохраняй в бд как вариант)) всё равно идёт в бд. и не <br> а <br/> пиши или \n попробуй Не охота через "одно место", добавлять в БД. Поэтому и написал сюда, может, кто встречался с проблемой и напишет, где функция режет теги. Link to comment Share on other sites More sharing options...
absent Posted October 17, 2013 Share Posted October 17, 2013 Не охота через "одно место", добавлять в БД. Поэтому и написал сюда, может, кто встречался с проблемой и напишет, где функция режет теги. я раньше делал так только true и false не писал. вроде работало. в 1,5 public static function updateValue($key, $values, $html = false, $id_shop_group = null, $id_shop = null) { с true должно работать. может дело не в записи а в выводе? проверь с true в бд попадает html ? Link to comment Share on other sites More sharing options...
goodwin74 Posted October 17, 2013 Author Share Posted October 17, 2013 я раньше делал так только true и false не писал. вроде работало. в 1,5 public static function updateValue($key, $values, $html = false, $id_shop_group = null, $id_shop = null) { с true должно работать. может дело не в записи а в выводе? проверь с true в бд попадает html ? Если бы в БД писалось с тегами, то в настройках модуля при помощи Configuration::get выводились бы тоже теги, но и там ведь их нет. Link to comment Share on other sites More sharing options...
absent Posted October 17, 2013 Share Posted October 17, 2013 Если бы в БД писалось с тегами, то в настройках модуля при помощи Configuration::get выводились бы тоже теги, но и там ведь их нет. сорь ступил, щас попробую у себя... Link to comment Share on other sites More sharing options...
absent Posted October 17, 2013 Share Posted October 17, 2013 сорь ступил, щас попробую у себя... какой html не получется скинь... Link to comment Share on other sites More sharing options...
absent Posted October 17, 2013 Share Posted October 17, 2013 (edited) Если бы в БД писалось с тегами, то в настройках модуля при помощи Configuration::get выводились бы тоже теги, но и там ведь их нет. <? require_once(dirname(__FILE__).'/config/config.inc.php'); require_once(dirname(__FILE__).'/init.php'); $html = 'test<br/>testing'; Configuration::updateValue('testing', $html, true); $r = Configuration::get('testing'); print_r($r); вот код работает <br/> Edited October 17, 2013 by absent (see edit history) Link to comment Share on other sites More sharing options...
goodwin74 Posted October 17, 2013 Author Share Posted October 17, 2013 <? require_once(dirname(__FILE__).'/config/config.inc.php'); require_once(dirname(__FILE__).'/init.php'); $html = 'test<br/>testing'; Configuration::updateValue('testing', $html, true); $r = Configuration::get('testing'); print_r($r); вот код работает <br/> Configuration updated и <br/> исчезает у тебя версия может новая PS? Link to comment Share on other sites More sharing options...
absent Posted October 17, 2013 Share Posted October 17, 2013 (edited) 1.5.6 в 1,5,4,1 щас проверил всё ок. Configuration updated и <br/> исчезает у тебя версия может новая PS? Edited October 17, 2013 by absent (see edit history) Link to comment Share on other sites More sharing options...
goodwin74 Posted October 17, 2013 Author Share Posted October 17, 2013 1.5.6 в 1,5,4,1 щас проверил всё ок. Configuration::updateValue('block1', (($_POST['block1'] != '') ? $_POST['block1']: ''),true); Configuration::updateValue('block2', (($_POST['block2'] != '') ? $_POST['block2']: ''),true); $this->_clearCache('blockFooter.tpl'); $output = '<div class="conf confirm">'.$this->l('Configuration updated').'</div>'; Вывод: <h2>'.$this->displayName.'</h2> '.$output.' <form action="'.Tools::htmlentitiesutf8($_SERVER['REQUEST_URI']).'" method="post"> <fieldset class="width2"> <label for="block1">'.$this->l('Блок 1: ').'</label> <textarea id="block1" name="block1">'.Tools::safeOutput((Configuration::get('block1') != "") ? Configuration::get('block1') : "").'</textarea> <label for="block2">'.$this->l('Блок 2: ').'</label> <textarea id="block2" name="block2">'.Tools::safeOutput((Configuration::get('block2') != "") ? Configuration::get('block2') : "").'</textarea> <div class="clear"> </div> <br /><center><input type="submit" name="submitModule" value="'.$this->l('Update settings').'" class="button" /></center> </fieldset> </form>'; Вроде все правильно. Link to comment Share on other sites More sharing options...
absent Posted October 17, 2013 Share Posted October 17, 2013 Configuration::updateValue('block1', (($_POST['block1'] != '') ? $_POST['block1']: ''),true); Configuration::updateValue('block2', (($_POST['block2'] != '') ? $_POST['block2']: ''),true); $this->_clearCache('blockFooter.tpl'); $output = '<div class="conf confirm">'.$this->l('Configuration updated').'</div>'; Вывод: <h2>'.$this->displayName.'</h2> '.$output.' <form action="'.Tools::htmlentitiesutf8($_SERVER['REQUEST_URI']).'" method="post"> <fieldset class="width2"> <label for="block1">'.$this->l('Блок 1: ').'</label> <textarea id="block1" name="block1">'.Tools::safeOutput((Configuration::get('block1') != "") ? Configuration::get('block1') : "").'</textarea> <label for="block2">'.$this->l('Блок 2: ').'</label> <textarea id="block2" name="block2">'.Tools::safeOutput((Configuration::get('block2') != "") ? Configuration::get('block2') : "").'</textarea> <div class="clear"> </div> <br /><center><input type="submit" name="submitModule" value="'.$this->l('Update settings').'" class="button" /></center> </fieldset> </form>'; Вроде все правильно. Tools::safeOutput убери и посмотри))) public static function safeOutput($string, $html = false) { if (!$html) $string = strip_tags($string); return @Tools::htmlentitiesUTF8($string, ENT_QUOTES); } 1 Link to comment Share on other sites More sharing options...
absent Posted October 17, 2013 Share Posted October 17, 2013 иль true пропиши 1 Link to comment Share on other sites More sharing options...
goodwin74 Posted October 17, 2013 Author Share Posted October 17, 2013 иль true пропиши Вот так всегда лезу в глубь движка а перед носом то что не вижу)))спасибо огромное) Link to comment Share on other sites More sharing options...
absent Posted October 17, 2013 Share Posted October 17, 2013 Вот так всегда лезу в глубь движка а перед носом то что не вижу)))спасибо огромное) лазить и ещё раз лазить!)) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now