[решено] В каком виде в БД хранятся html special characters?

Главные вкладки

Аватар пользователя DenisVS DenisVS 22 января 2012 в 0:16

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

&
 

и т.п.
Причина такой нужды — массово конвертил HTML через импорт CSV, пришлось заменить все ";" на свою комбинацию.

Комментарии

Аватар пользователя Виктор Степаньков ака RxB Виктор Степаньк... 22 января 2012 в 0:30

"DenisVS" wrote:

Момент, может, я чего-то недопонимаю, а разве точка с запятой не опасный символ для MySQL?

в чём опасность?
Мускулю всё равно что хранить, хоть порнуху

Аватар пользователя Chyvakoff Chyvakoff 22 января 2012 в 0:31

точка с запятой-нет. Кавычка-да.
Использование PDO защищает drupal от sql инъекций, к форматам ввода это не имеет отношения. Все эти форматы отрабатываются на стороне клиента,скажем так..

Аватар пользователя DenisVS DenisVS 22 января 2012 в 11:42

В общем, вы правы.
Текст на странице:

"Это в кавычках", а 'это в одинарных кавычках'.
<Это в угловых скобках> Перенос
Перенос
перенос

Текст в дампе:

('node', 'article', 0, 536, 536, 'und', 0, '"Это в кавычках", а ''это в одинарных кавычках''.\r\n<Это в угловых скобках> Перенос\r\nПеренос\r\nперенос\r\n', '', 'plain_text');

Создаются пробельные символы, а одинарные кавычки дублируются.

Если вместо plain_text стоит full_html, ничего не меняется в плане хранения, оно лишь парсится и отдаётся в другом виде.

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

Аватар пользователя Chyvakoff Chyvakoff 23 января 2012 в 9:34

Вот как приятно когда новичек сам вкуривает свою проблему да ещё и на форуме пишет результат своих исследований.
А то обычно пишут "я пхп незнаю,в друпале новичек,дайте хостинг за 50 рублей и чтоб всё работало и ссылку на API восьмого друпала на русском языке."