parserALT
Страницы форума: ← Назад | 1 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 600 | Дальше →

фак читал, но не могу справится, прошу помощи

#1Петя
17.09.09 03:53
www.parser.ru → | ответить → | в избранное →

фак читал, но не могу справится, прошу помощи

в базе хранится код:

11<br><br>22<br><br>33

этот код отображается в поле textarea:

$str[код из базы]
$str[^str.match[<br>][g]{^#0A}]
$str[^str.match[<br/>][g]{^#0A}]
$str[^str.match[<br />][g]{^#0A}]
$str[^str.match[<BR>][g]{^#0A}]
$str[^str.match[<BR/>][g]{^#0A}]
$str[^str.match[<BR />][g]{^#0A}]

<textarea>$str</textarea>

в итоге в поле формы вместо <br><br> происходит только один раз перевод каретки

пожскажите пожалуйста, в чём ошибка
#2Misha v.3
→ Петя [#1] | 17.09.09 04:50
www.parser.ru → | ответить → | в избранное →

вам сюда: «untaint, taint, apply-taint. Преобразование данных» (документация)

#3Петя
→ Misha v.3 [#2] | 17.09.09 05:28
www.parser.ru → | ответить → | в избранное →
читал, не помогает

подскажите как быть
#4off
→ Петя [#3] | 17.09.09 16:47
www.parser.ru → | ответить → | в избранное →

читали, а что применили из документации?

#5Maxx
→ Петя [#1] | 17.09.09 18:51
www.parser.ru → | ответить → | в избранное →

жесть...

$str[код из базы]
$str[^str.match[<br>][g]{^#0A}]
$str[^str.match[<br/>][g]{^#0A}]
$str[^str.match[<br />][g]{^#0A}]
$str[^str.match[<BR>][g]{^#0A}]
$str[^str.match[<BR/>][g]{^#0A}]
$str[^str.match[<BR />][g]{^#0A}]

это

$str[код из базы]
$str[^str.match[<br\s*\/?>][gi]{^#0A}]
#6Петя
→ Maxx [#5] | 19.09.09 01:36
www.parser.ru → | ответить → | в избранное →
спасибо!

а как быть с <br><br> в поле формы? у меня только один возврат каретки происходит
#7Петя
→ off [#4] | 19.09.09 01:36
www.parser.ru → | ответить → | в избранное →
вообщем я сам не разобрался -- вы не могли бы подсказать, научить
#8Maxx
→ Петя [#6] | 19.09.09 16:53
www.parser.ru → | ответить → | в избранное →
Вам уже подсказали как быть, приведя ссылку на нужную страницу в документации. Неужели так сложно прочитать, тем более что без понимания этого раздела у вас будет и потом много аналогичных вопросов? Ну и если уж совсем лень и скукота - то хотя бы поищите на этой странице упоминания слова "textarea" - найдете ответ на свой вопрос. Не?
#9Петя
→ Maxx [#8] | 19.09.09 20:09
www.parser.ru → | ответить → | в избранное →
я искал там textarea

вот такой код:

$text[aa<br><br>bb<br>cc<br>]

вывожу разными способами, как указано здесь «untaint, taint, apply-taint. Преобразование данных» (документация):

<textarea>^untaint[html]{$text}</textarea>
<textarea>^taint[html][$text]</textarea>

это всё вообще мимо -- в textarea отображаются теги

мне же нужно чтобы код там был wysiwyg, то есть вместо <br><br> -- два перевода каретки

и по форуму тоже искал, нашёл такой способ:

$text[^text.match[<br\s*\/?>][gi]{^#0A}]
<textarea>$text</textarea>

это уже лучше -- теги не отображаются, но перевод каретки происходит только один раз

в чём может быть причина?
#10off
→ Петя [#7] | 19.09.09 20:56
www.parser.ru → | ответить → | в избранное →

я вам тут ответил, но чудесным образом ответ пропал :-)

Parser выполняет оптимизацию пробельных символов
#11Петя
→ off [#10] | 19.09.09 21:14
www.parser.ru → | ответить → | в избранное →
так речь не о пробелах а о замене <br><br> на \n\n

или на парсере нельзя реализовать wisiwig редактор в teaxtarea?
#12Maxx
→ Петя [#9] | 19.09.09 21:18 / 21:19
www.parser.ru → | ответить → | в избранное →

Эх...

В доке написано следующее:
Текст, написанный разработчиком в теле страниц, также подвергается автоматическому преобразованию. В нём Parser выполняет оптимизацию пробельных символов (пробел, табуляция, перевод строки).

Что это значит? Что если у вас есть вот такой код:
$s[before_many_spaces                 after_many_spaces]
$s


то в браузер будет выведено
before_many_spaces after_many_spaces


т.е. все пробелы схлопнутся до одного. на месте пробелов могут быть и другие пробельные символы (таб, новая строка - ваш случай). Чтобы парсер такого не делал нужную строку надо пометить соотвествующим образом

$s[before_many_spaces                 after_many_spaces]
^taint[as-is][$s]


и всё будет пучком. вы так пробовали?

Тайнтить еще не преобразованную сроку, т.е. ещё содержащую <br/> - не соответствует вашей задаче (вы же понимаете разницу между символом новой строки и тэгом <br />?).

P.S. и не надо пожалуйста копипастить свои ответы в разные ветки
#13Петя
→ Maxx [#12] | 19.09.09 22:48
www.parser.ru → | ответить → | в избранное →
заработало, спасибо! )))

удалите тогда уж топик с sumo

может подскажете ещё в рамках оффтопика:

теперь у меня такой код

$str[aa<br><br>bb<br><br>cc]
$str[^str.match[<br\s*\/?>][gi]{^#0A}]
<span id=box>
<textarea name=description>^taint[as-is][$str]</textarea>
</span>

и есть кнопка по нажатию на которую вместо textarea появляется текст, который сидел в textarea

document.getElementById('box').innerHTML = document.form.description.value;

так вот текст в поле box появляется, но теги там не работают, то есть текст идёт сплошняком -- aa bb cc

как преобразовывать содержимое document.form.description.value чтобы на странице работали теги?
#14off
→ Петя [#13] | 20.09.09 12:42
www.parser.ru → | ответить → | в избранное →

Посмотрите на редакторы TinyMCE и FCKeditor

Страницы форума: ← Назад | 1 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 600 | Дальше →