Итак, я вхожу
hello \n \n my friend \n !
в текстовую область.
Затем я сохраняю его в БД, извлекаю и получаю
hello
my friend
!
Но я не хотел переводить \ n в новые строки.
Итак, это мой пример настройки:
<textarea name="mytextarea">$mytext</textarea>
на сервере я делаю:
хранить
$mydbtextstore = $_POST["mytextarea"];
$modsql = " UPDATE mytable SET text = " . "'" . $mydbtextstore . "'" ;
mysql_query($modsql, $conn) or die(mysql_error());
извлекать
$descSQL = " SELECT text
FROM mytable;"$descRes = mysql_query($descSQL, $conn) or die(mysql_error());
$descRow = mysql_fetch_array($descRes);
$mytext = $descRow["text"];
Что мне не хватает?
Текстовая область ДОЛЖНА воспроизводить и содержать это:
\n
Вы должны избежать обратной косой черты с другой обратной косой чертой. Смешно, правда?
Поэтому после того, как вы отправили свой текст, сделайте так:
$text = str_replace('\\', '\\\\', $text);
поэтому у вас будет следующее:
hello \\n \\n my friend \\n !
и когда вы вставите его в базу данных, он будет выглядеть как строка с одной обратной косой чертой
Вы можете использовать str_replace, как это, после получения данных.
$mytext = str_replace("\","\",$mytext);
Вы замените косую черту ее html-сущностью, если будете использовать этот код.
РЕДАКТИРОВАТЬ: или использовать htmlentities на всю строку.