2014-12-15 1 views
2

В моей базе данных Я храню некоторый код html (из CKEditor), и я хотел бы иметь возможность проверить эти значения в PhpMyAdmin.Отображать правильные символы, если выбрать в столбце, содержащем HTML

Существует одна небольшая проблема: HTML написан на французском языке, так что существует много ar & eacute: или другие типы символов html, которые делают эти значения трудночитаемыми.

Я знаю, что есть настройки, чтобы избежать CKEditor, заменяющего символы & eacute :, но я не хочу ничего менять в коде или конфигурации.

Есть ли Команда MySQL, которая позволила бы отображать текст правильно?

Примечание: выполнение str_replace или вида не требуется.

Edit: Для Exemple для элемента хранится следующим образом:

<div> 
    &eacute:l&eacute:phant 
</div> 

Я хотел бы прочитать в моем результирующем столбце:

<div> 
    éléphant 
</div> 
+0

Формат использования BB-коды. –

+0

http://stackoverflow.com/questions/11591757/100-safe-way-of-storing-html-in-mysql –

+0

Я действительно не понимаю, как использовать это для моей проблемы – realUser404

ответ

3

Я боюсь, что нет никакого способа, делать то, что вы просите.

Лучший способом я нашел бы создать функцию, которая декодирует текст, а затем использовать его в некоторых заявлениях:

mysql> SELECT HTML_UnEncode('Dr.H&uuml;bner'); 
+---------------------------------+ 
| HTML_UnEncode('Dr.H&uuml;bner') | 
+---------------------------------+ 
| Dr.Hübner | 
+---------------------------------+ 

Вот ссылка на эту функцию:

http://forums.mysql.com/read.php?98,246527,246527

+0

Слишком плохо, но спасибо, что связали меня с этой функцией! – realUser404

+0

Мое удовольствие. Я думаю, что это не ваше дело, но помните, что если вы используете функцию в 'where', 'sort', 'group by' ..., то индексы не помогут ускорить результаты. BTW в выбранных столбцах у вас не должно быть проблем с этим :) – vivoconunxino

0

Это легко осуществить с помощью функции transformation phpMyAdmin.

Мой ответ предполагает, что вы уже правильно настроены phpMyAdmin Configuration Storage, если вы не просто должны создать таблицы путем редактирования файла в examples/create_tables.sql задать имя пользователя, имя базы данных и пароль, а затем импортировать его на сервер MySQL. Измените config.inc.php, чтобы добавить директивы, которые вы можете найти, начиная с http://docs.phpmyadmin.net/en/latest/config.html#cfg_Servers_pmadb.

До:

Before transformations

Во всяком случае, отредактировать таблицу, перейдя на вкладку Структура.

Structure tab

Нажмите на значок карандаша/Изменить ссылку для столбца (ов), содержащий HTML сущности.

На итоговой странице найдите раскрывающееся меню «Отображение отображения браузера». Один из встроенных преобразований именно то, что вы после: «Текст/Plain: отформатированный»

Text/Plain: Formatted dropdown

Нажмите кнопку Сохранить, а затем вы можете просмотреть таблицу и должны увидеть преобразованный выход.

После:

After transformations

+0

На самом деле я не пытаюсь изменить отображение только одного столбца. Я делаю select на многих столбцах разных таблиц, которые зашифрованы, чтобы усложнить проблему, поэтому я уже делаю aes_decrypt (mycolumn, pass), и я ищу другую функцию mySQL для ее переноса: display_html_correctly (aes_decrypt (my_column, pass)) – realUser404

+0

Вы можете применить преобразование ко многим столбцам, выполнив один и тот же процесс для каждого (вы можете редактировать их все одновременно, это не должно быть по одному). Извините за часть aes_decrypt(), но вы не упомянули об этом как часть своего вопроса, чтобы я не мог знать. Приветствия. –

Смежные вопросы