Статьи для johnCMS 5.x.x

1.35K
.
Нектарин, Вот кусок кода отвечающий как я понял за вывод
$to_text = functions::checkout($alb['text'], 1, 1);
        
        $to_text = preg_replace_callback('/\[(file|img)\=([^\n\&\/\"\\\\<\>\+\&\;\:]{1,200})\](.*?)\[\/\1\]/', array('ablogs', 'image_replace'), $to_text);
.
~ PHP-7 & REGEXP - This is a really powerful kit ~
# Pistolero (29.10.2016 / 18:54)
Кавычки в заголовках заменяются на &quot; Как это поправить?
Теоретически - нужно убрать в этом моде фильтрацию заголовков. Поищи в моде функцию htmlspecialchars() , и удали её. Но только внимательно, чтобы не образовалась дыра.
.
~ PHP-7 & REGEXP - This is a really powerful kit ~
# Pistolero (29.10.2016 / 19:49)
Нектарин, Вот кусок кода отвечающий как я понял за вывод
$to_text = functions::checkout($alb['text'], 1, 1);

$to_text = preg_replace_callback('/\[(file|img)\=([^\n\&\/\"\\\\<\>\+
Это не тот код - судя по регулярному выражению, этот код фильтрует названия картинок.
.
ДоХтор, Фильтр срабатывает еще при записи в базу, при нормальном раскладе,я думаю, нужно при выводе преобразовывать &quot; обратно в кавычки.
.
~ PHP-7 & REGEXP - This is a really powerful kit ~
# Pistolero (29.10.2016 / 19:55)
ДоХтор, Фильтр срабатывает еще при записи в базу, при нормальном раскладе,я думаю, нужно при выводе преобразовывать &quot; обратно в кавычки.
Тогда в нужном месте обработай заголовок функцией htmlspecialchars_decode() , или html_entity_decode() -- одной из них, в зависимости от того, какой функцией было закодировано.
.
ДоХтор, Нашел, но там функция htmlentities
.
aNNiMON
Беда в том, что кто-то очень любит заносить в базу отфильтрованные через htmlentities строки. Оттого и получается, что из базы достаётся строка, готовая к выводу в HTML, а её ещё раз фильтруют.
`name` = "'.mysql_real_escape_string(htmlentities($code_name, ENT_QUOTES, 'UTF-8')).'",

. (+/-)
.
~ PHP-7 & REGEXP - This is a really powerful kit ~
# Pistolero (29.10.2016 / 20:05)
ДоХтор, Нашел, но там функция htmlentities
Ну вот и удали её. Если строка в посту выше соответствует той, о которой говоришь ты, то без этой ф-ции у неё должен быть такой вид
`name` = "'. mysql_real_escape_string($code_name) .'",
.
Всем спасибо, нашел , заменил кавычки теперь отображаются правильно.
.
А вообще порылся я по файлам и испытал культурный шок от увиденного
Вывод иконок - альтов нет нигде
Дивы где то есть где то нет
Местами встречается просто <br>
Всего: 160