Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Необходима замена 'rn' после ввода или вывода текста
 
 автор: anechka   (02.10.2006 в 14:28)   письмо автору
 
 

При вводе данных в поле textarea, после нажатия клавиши "Enter", вместо перехода на следуюжую строку в базу записывается "rn".
Например, привводе:
"qwe
rty"
в базу данных записывается:
"qwernrty"
Я пробовала делать замену с помощью:
str_replace('rn', "<br>", $переменная)
, заменять получается, но есль встречается слово, например:
"attorney",
то привыводе получается:
"atto
ey".
Что мне делать?:)

   
 
 автор: kasmanaft   (02.10.2006 в 14:40)   письмо автору
 
   для: anechka   (02.10.2006 в 14:28)
 

можно попробовать обработать текст ф-ей nl2br($text);

   
 
 автор: elenaki   (02.10.2006 в 15:19)   письмо автору
 
   для: kasmanaft   (02.10.2006 в 14:40)
 

а обратные слаши где? заменять-то надо вместе с ними. обратный слаш - это признак того,
что перед нами не просто буква, а специальный символ, понимаемый системой иначе.
функция nl2br() не ЗАМЕНЯЕТ, а вставляет перед символом перевода строки тэг перевода
строки (br). если строка должна потом использоваться как неразрывная (например, в Java-scripte),
то это не спасет. надо пользоваться именно функцией замены.

   
 
 автор: Anechka   (02.10.2006 в 15:33)   письмо автору
 
   для: kasmanaft   (02.10.2006 в 14:40)
 

Совершенно верно, эта ф-я не помогает. В б.д. MySQL записывается предложение с 'rn', а при выводе эта ф-я на них не реагирует. A какой именно ф-ие замены нужно воспользоваться.

   
 
 автор: elenaki   (02.10.2006 в 15:41)   письмо автору
 
   для: Anechka   (02.10.2006 в 15:33)
 


$text = "tatatata\r\nouoiopiopo";
echo str_replace("\r\n", "<br>", $text);

   
 
 автор: Anechka   (02.10.2006 в 15:51)   письмо автору
 
   для: elenaki   (02.10.2006 в 15:41)
 

Не совсем то, что нужно.:)
В переменную передается

$text = 'qwernrty';
.

   
 
 автор: elenaki   (02.10.2006 в 15:55)   письмо автору
 
   для: Anechka   (02.10.2006 в 15:51)
 

а при вставке в базу вы делаете addslashes($text);?

   
 
 автор: Anechka   (02.10.2006 в 16:12)   письмо автору
 
   для: elenaki   (02.10.2006 в 15:55)
 

Я пробовала и с этой ф-ией, но она не срабатывает.

   
 
 автор: elenaki   (02.10.2006 в 16:14)   письмо автору
 
   для: Anechka   (02.10.2006 в 16:12)
 

что значит - "не срабатывает"?
при вставке addslashes(), при выводе stripslashes()

   
 
 автор: Anechka   (02.10.2006 в 16:18)   письмо автору
 
   для: elenaki   (02.10.2006 в 16:14)
 

И то, и другое не работает.

   
 
 автор: elenaki   (02.10.2006 в 16:24)   письмо автору
 
   для: Anechka   (02.10.2006 в 16:18)
 

При вводе данных в поле textarea, после нажатия клавиши "Enter", вместо перехода на следуюжую строку в базу записывается "rn".
Например, привводе:
"qwe
rty"
в базу данных записывается:
"qwernrty"

=======================================================================
пример запроса, которым вставляете и которым проверяете


Я пробовала делать замену с помощью:str_replace('rn', "<br>", $переменная)
=======================================================================
на каком этапе (при вставке или при выводе) вы делаете эту замену?


, заменять получается, но есль встречается слово, например:
"attorney",
то привыводе получается:
"atto
ey".

=======================================================================
пример запроса, которым выводите

   
 
 автор: cheops   (03.10.2006 в 12:25)   письмо автору
 
   для: anechka   (02.10.2006 в 14:28)
 

У вас записывается именно rn, а не \r\n?

   
 
 автор: ec_stasis   (03.10.2006 в 14:37)   письмо автору
 
   для: anechka   (02.10.2006 в 14:28)
 

Покажи код.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования