我正在使用 CKeditor,但我无法使用图像。当我使用它创建帖子/文章时,添加图像等,一切正常。但是,在我将文章提交到数据库后,它会转义 url 和整体语法,这将导致当我尝试查看它时没有显示图像。
这是编辑器中的 img 语法:
<img alt="logo" src="/images/image.png" style="width: 250px; height: 183px; border-width: 2px; border-style: solid;" />
这是在插入函数运行之后:
<img alt=\"logo\" src=\"/images/image.png\" style=\"width: 200px; height: 147px; border-width: 2px; border-style: solid;\" />
你明白了它的要点,它避开了所有必需品,所以它不会破坏 html。我在这里做了一些搜索,发现了类似的东西html_entity_decode
,但没有用。
如何正确“取消转义”语法以便图像正确显示?
PS:这是我使用的插入和显示脚本
public function insert () {
$sql = $this->db->prepare("INSERT INTO Content (Title, Body, category) VALUES (?, ?, ?)");
$sql->bindParam(1, $_POST['title']);
$sql->bindParam(2, $_POST['body']);
$sql->bindParam(3, $_POST['category']);
$sql->execute();
}
public function display ($id) {
$sql = $this->db->query("SELECT Body FROM Content WHERE id='$id'");
while ($row = $sql->fetch()) {
echo $row;
}
}
html_entity_decode
我在显示脚本中尝试过$a = html_entity_decode($row['Body']);
,然后回显它或将行分配给一个变量然后解码它。也许我做错了,我不确定。