[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Хранение большого текста в БД
DmitryOpalev
Запихнул большой текст в БД. Но когда я стал его оттуда доставать, у меня на месте переноса появились \r\n. Смог их убрать с помощью htmlspecialchars(), но тогда у меня перестали работать теги.
Но текст редатируется из Админки, занчит я не могу его выводить без htmlspecialchars, как быть?



Спустя 4 минуты, 25 секунд (22.03.2011 - 22:16) alex12060 написал(а):

str_replace("\r\n", "", $text);


А вообще, они нужны, так как при выводе, они сделают текст читабельным. А если применять еще и nl2br() то можно быть вообще модным)
Рещать тебе)

Спустя 2 минуты, 9 секунд (22.03.2011 - 22:18) sergeiss написал(а):
DmitryOpalev - покажи, что и как ты делал?

Скорее всего, ты вводил текст через textarea, а выводишь "просто так". Или как-то по-другому?

Спустя 1 минута, 48 секунд (22.03.2011 - 22:19) alex12060 написал(а):
sergeiss

Он скорее всего выводит через одинарные кавычки, вот они и появились.

Спустя 20 секунд (22.03.2011 - 22:20) Trianon написал(а):
DmitryOpalev
Появиться просто так, внезапно и неожиданно, они не могли.
Другими словами, эти символы были в тексте, когда он помещался в таблицу.
Ищите, что стало причиной.

Спустя 3 минуты, 25 секунд (22.03.2011 - 22:23) DmitryOpalev написал(а):
Через SQL в phpMyAdmine добавил текст

Спустя 1 минута, 11 секунд (22.03.2011 - 22:24) Админ написал(а):
nl2br (htmlspecialchars ($text))

Спустя 3 минуты, 18 секунд (22.03.2011 - 22:28) DmitryOpalev написал(а):
nl2br()
Все хорошо отображет smile.gif

Спустя 3 минуты, 3 секунды (22.03.2011 - 22:31) Админ написал(а):
DmitryOpalev
я б для админки ещё б посоветовал ckeditor прикрутить - очень удобная вещь
http://ckeditor.com/

Спустя 10 минут, 54 секунды (22.03.2011 - 22:42) DmitryOpalev написал(а):
Тут проблема появилась - теперь php не работает, а отображается в исходном коде unsure.gif

Спустя 2 минуты, 54 секунды (22.03.2011 - 22:45) Админ написал(а):
DmitryOpalev
из за чего изза nl2br или ckeditor ?

Спустя 40 секунд (22.03.2011 - 22:45) sergeiss написал(а):
DmitryOpalev - ну так ты покажешь наконец-то свой код или как?

Спустя 16 минут, 12 секунд (22.03.2011 - 23:01) DmitryOpalev написал(а):

$pageinfo = mysql_fetch_assoc($query);

...
<?=$pageinfo['content']?>

Спустя 5 минут, 27 секунд (22.03.2011 - 23:07) Админ написал(а):
чё то я не догоняю - энто что ты показал ?
(дурацкие шорт-теги blink.gif )

Спустя 27 минут, 4 секунды (22.03.2011 - 23:34) Invis1ble написал(а):
Админ
это вывод в поток такой

Спустя 1 минута, 4 секунды (22.03.2011 - 23:35) DmitryOpalev написал(а):
Это я показал, что я вывожу.
С обычными тегами так же история. Я хочу узнать, как одновременно разрешить тегам работать, но и обзепопасить себя от ненужных внедрений в старницу?
Ну и еще чтоб php работал rolleyes.gif

Спустя 10 минут, 7 секунд (22.03.2011 - 23:45) Админ написал(а):
Invis1ble
да я знаю что это вывод - я ж написал - дурацкие шорт-теги - я сути не догоняю
DmitryOpalev
а где в текстареа - хочешь php чтоб работал ?
относительно обзепопасить - так вообще не ясно - обычно такую операцию на входе производят

Спустя 3 минуты, 13 секунд (22.03.2011 - 23:48) DmitryOpalev написал(а):
Ну суть проста. Вот я сделал страницу, и заполнил ее содержание. Потом я это содержание вывожу (при формировании стринцы). Теперь надо чтобы сработали все теги. Еще меня интересует, как огораживатся от постороннего кода.

Спустя 3 минуты, 36 секунд (22.03.2011 - 23:52) Invis1ble написал(а):
Можно вырезать все теги strip_tags(), указывая вторым параметром разрешенные теги

Спустя 30 секунд (22.03.2011 - 23:52) Админ написал(а):
DmitryOpalev
надо походу мне с пивом завязывать - где, какие теги должны срабатывать
Цитата
как огораживатся от постороннего кода.

это про валидацию данных из форм или что ?

Спустя 1 минута, 14 секунд (22.03.2011 - 23:54) Invis1ble написал(а):
Цитата (Админ @ 22.03.2011 - 22:52)
DmitryOpalev
надо походу мне с пивом завязывать - где, какие теги должны срабатывать
Цитата
как огораживатся от постороннего кода.

это про валидацию данных из форм или что ?

да, с пивом завязывай smile.gif
но чесно говоря я сам не вкурил, о чем Дмитрий толкует.... ))

Спустя 6 минут, 10 секунд (23.03.2011 - 00:00) DmitryOpalev написал(а):
Ну или я сонный щас тут пишу laugh.gif
Это создание страниц.
Вообщем, я пишу <h1>Welcom</h1>, записываю это в Базу. Потом (пусть не использую никаких htmlspecialchars и nl2br) формирую страницу и вывожу вот этот Welcom (большой и жирный) на страницу. Таким образом страница приобрела нормальный вид (но php в исходном коде!), но теперь если кто-то взломал мою админку, он может прийти, написать что-нибудь и уийти. А его код сработает.
Пусть я код обработад htmlspecialchars или nl2br, но тогда у меня появится <b>Welcom</b>, а php и совсем не сработает, окажется в исходном коде.

Так вот biggrin.gif
Как мне заставить работать php, обработать "вражеские теги", и не обрабатывать свои?

P.S. понятно?

Спустя 33 минуты, 7 секунд (23.03.2011 - 00:33) Invis1ble написал(а):
никак. Обрабатывай strip_tags() как я написал выше. Укажи там свои b, i, u, s, strong и т.д., а остальные будут вырезаться


_____________
Курс валют
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.