Суть дела такова:
В ячейку таблицы инсертом с помощью формы заносим текст. В нем может встречаться знак процента (%). Собственно все заносится на ура, только когда пытаемся вывести текст например так:
printf('Какой-то текст '.$r['text'].' Еще текст');
printf упорно не пашет при присутствии %. Экранировать пробовал (%%) - такой способ не подходит ибо когда на совершенно другой странице вывожу эхом рисует два знака процента. Первоначальный вывод эхом тоже не подходит...
В общем как быть, господа?
Спустя 35 минут, 55 секунд (7.12.2010 - 05:31) kirik написал(а):
Цитата (Гость_Святослав @ 6.12.2010 - 20:55) |
В общем как быть, господа? |
А зачем выводить текст через printf?
Если уж очень нужно то можно экранировать не при занесении данных в таблицу, а при выводе.
Спустя 3 часа, 53 минуты, 53 секунды (7.12.2010 - 09:25) linker написал(а):
echo 'Какой-то текст '.$r['text'].' Еще текст';
Спустя 5 часов, 23 минуты, 49 секунд (7.12.2010 - 14:49) Guest написал(а):
Господа, вариант с эхом никак не подходит. Экранировать при выводе это как?
Спустя 6 часов, 45 минут, 52 секунды (7.12.2010 - 21:35) kirik написал(а):
Цитата (Guest @ 7.12.2010 - 06:49) |
Экранировать при выводе это как? |
printf('Какой-то текст '.str_replace('%', '%%', $r['text']).' Еще текст');
Только вот не могу представить себе случая, когда:
Цитата (Guest @ 7.12.2010 - 06:49) |
вариант с эхом никак не подходит |