Это, наверное, действительно глупо, но я пытаюсь сохранить контент из texarea в MySQL с PHP. Обычно новые строки сохраняются в базе данных. Но внезапно их удаляют.PHP сохранить контент из textarea с помощью новой строки
Я использую JQuery, чтобы отправить значения в PHP с AJAX, а затем я делаю это в PHP:.
$var = strip_tags($_POST["var"]);
$db->query("UPDATE table SET var='$var' WHERE id=$id")
Как-то переводы строк теряются на пути в случае, если я nl2br на вар, то они переведены на <br/>
, поэтому $ var содержит новую строку вплоть до запуска запроса.
Обновление, чтобы добавить к странности. Если я действительно запускаю nl2br на $ var, а затем заменяю br-теги на новую строку, перед обновлением таблицы все хорошо, что происходит?!?
Это работает просто отлично:
$var = strip_tags($_POST["var"]);
$var = nl2br($var);
$var = preg_replace('#<br\s*/?>#i', "\n", $var);
$db->query("UPDATE table SET var='$var' WHERE id=$id");
ли вам:. http://php.net/manual/en/mysqli.real-escape-string.php
что означает, удаляются следующие см. новые строки в самой базе данных? Может быть, вы должны использовать nl2br на стороне рендеринга. –
use nl2br. like $ var = nl2br (strip_tags ($ _POST ["var"])); –
Нет Я не вижу новые строки в базе данных. И если я запустил nl2br на стороне рендеринга, то не появятся
. – johnohod