将段落存储到mysql中,php正在添加额外字符

将段落存储到mysql中,php正在添加额外字符,php,mysql,special-characters,Php,Mysql,Special Characters,这就是我输入的内容: Hey this is a test this is another line 这就是我在mysql中得到的(当我与phpmyadmin进行检查时): 以下是查询: $storeme = nl2br(htmlentities($valeur, ENT_QUOTES, 'UTF-8')); $quer = mysqli_query($con,"UPDATE engine4_users SET billboard='$storeme' WHERE user_id='$use

这就是我输入的内容:

Hey this is a test
this is another line
这就是我在mysql中得到的(当我与phpmyadmin进行检查时):

以下是查询:

$storeme = nl2br(htmlentities($valeur, ENT_QUOTES, 'UTF-8'));

$quer = mysqli_query($con,"UPDATE engine4_users SET billboard='$storeme' WHERE user_id='$userid' ");
所以很明显,每个空格返回的是%20,它不会保存换行符。
我怎样才能解决这个问题?im使用
接收段落在将数据输入mysql之前不要处理数据:

$quer = mysqli_query($con,"UPDATE engine4_users SET billboard='".mysql_real_escape_string($storeme,$con)."' WHERE user_id='".mysql_real_escape_string($userid,$con)."' ");

在获取数据后处理数据。

您应该将文本按原样存储在数据库中。当您想要获取它并在屏幕上显示它时,您可以使用nl2br和htmlentities。顺便说一句,htmlentities导致此字符转义。是否不使用
htmlentities
$quer = mysqli_query($con,"UPDATE engine4_users SET billboard='".mysql_real_escape_string($storeme,$con)."' WHERE user_id='".mysql_real_escape_string($userid,$con)."' ");