За последние 24 часа нас посетили 54355 программистов и 1776 роботов. Сейчас ищут 1026 программистов ...

Как edit/view в БД текстовые поля содержащие HTML-код?

Тема в разделе "PHP для новичков", создана пользователем Ruzzz, 12 фев 2008.

  1. Ruzzz

    Ruzzz Активный пользователь

    С нами с:
    11 фев 2008
    Сообщения:
    148
    Симпатии:
    1
    У меня такая проблема. Части страниц я храню в БД, в таблице. Эти части хранять HTML-код.
    Написал маленькую админку, может добавлять/править/удалять такие части. Вот проблема: как этот HTML-код выводить и править в админке(в phpMyAdmin ситуация аналогична :))? При при выводе через <textarea><?php echo $content ?></textarea> $content может содержать код который искажает вывод! :( Помогите как быть? На компе то я могу редактировать БД и не через web-интерфейс, а вот как быть на хостинге?

    Условие такое: Я должен хранить абсолютно любой HTML-код! Так что это не совсем BB-код.

    Я думаю так, перед выводом в форме редактирования, заменяю все "опасные" символы на какие-то "директивы", например < на {starttag}, а > на {endtag}. делаю для себя :) поэтому какое-то "юзабилити для других" мне не нужно. Для себя могу конвертор написать который код переведет. Я его вставлю в админке на хостинге. Т.е. тогда схема такая: Верстаю код у себя на компе -> конвертирую -> на хостинге в админке добавляю. Ну и обратный процесс, если нада. Или нужно как-то по другому поступать? Да и какие символы опасны?
     
  2. RomanBush

    RomanBush Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
  3. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
  4. Ruzzz

    Ruzzz Активный пользователь

    С нами с:
    11 фев 2008
    Сообщения:
    148
    Симпатии:
    1
    Спасибо! ) Я об этих фунциях знал! :)
    Вообщем проблема какая была - я чота не проверив, решил что браузер в теге <textarea> будет что-то типа &lt так и выводить ) а он оказывается в форме тоже "рендерит" :) Знаю глупо! :)

    Решил использовать htmlspecialchars, а когда нужно будет этот кусок выводить, то использовать html_entity_decode
    Спасибо! Вопрос решён!