2

我有一个文本区域,我正在使用所见即所得编辑器,以便用户可以根据需要设置文本格式:更改颜色、加粗、更改大小等。问题是在我将数据插入表并检索行之后,我看不到格式,只是纯文本。插入文本时我应该做些什么以不丢失格式?我的桌子collation设置为utf8_unicode_ci

这是 html,我使用 ajax 发送表单,所以我没有 name 属性

<textarea  id="description" class="jqte-test" ></textarea>

插入查询如下:

$desc = trim(strip_tags($_POST["description"]));
$insert = $mysqli->prepare("insert into `test`(`description`) values(?)");
echo $mysqli->error;
$insert->bind_param('s', $desc);
$insert->execute();
4

1 回答 1

5

strip_tags用于从值中去除 html/php 标签。

我猜你使用的 WYSIWYG 编辑器输出 html 数据,所以通过使用 strip_tags 函数你取消了格式化。


更新:当您通过 pdo 将参数绑定到查询时,它会转义插入的数据。

插入数据时应用htmlspecialchars ($value, ENT_QUOTES)

并在显示数据时应用htmlspecialchars_decode ($value, ENT_QUOTES)

于 2013-08-10T21:49:36.387 回答