|
Форумы xBB > BBCode и прочие языки упрощенной разметки
коверкаются кавычки и скобки тегов
Автор: dimonise.
Последнее редактирование: 2011-06-16 15:29:55
Всем привет! начал пользоватся xBB - огромный респект создателю! все отлично, за исключением - тяну данные из базы <img src=' а при выходе нужно получить <img src="http://ddd ...." /> то есть кавычки и угловые скобки не конвертит, да, еще и знак ! тоже неконвертит. другие знаки пока не проверял но скорее всего их тоже глушит. подскажите выход пожалуйста! использую v.0.24
6 комментариев
dima
Похоже, что где-то перед парсингом к тексту был применен htmlspecialchars или htmlentities.
1. Проверьте текст в базе. В каком он виде?
2. Проверьте текст перед парсингом. В каком он виде?
Nutty
dimonise, где-то не по делу используется htmlspecialchars().
Nutty
Хотя можно и после парсера пройтись вот такова типа функцией.
function unhtmlspecialchars($string){
return str_replace(Array("&",""","'","<",>"), Array("&","\"","'","<",">"), $string);
}
//Преобразует обратно всё что было преобразовано htmlspecialchars но есть минус там где <div>все что не теги должны быть такова типа <img src=' если по стандарту
//а если сайт самописный и инфа из бд то советую там держать BBCODE разметку а не HTML проще но при большой популярности потребуется кешеирования материалов.
</div>.
dima
Правильнее найти, где не по делу пользуется htmlspecialchars и убрать это лишнее телодвижение
Nutty
dima Правильнее найти, где не по делу пользуется htmlspecialchars и убрать это лишнее телодвижение
Ага ) я просто предложил возможные способы решения проблемы.
кстати слышал что htmlspecialchars карявит в UTF-8 (
dima
Давно работаю с UTF-8. Никогда не видел, чтобы htmlspecialchars в нем корявил.
Ответить:
|