我有一个所见即所得的编辑器 (TinyMCE) 可以将博客文章添加到我的网站。如果我只是写一个相当正常的段落:
<p><strong>Hello world!</strong></p>
它输出就好了。但是,如果我尝试一些额外的 HTML,例如链接和下划线,我的编辑器会踢出以下内容,这些内容在打印到屏幕时不起作用或看起来不正确:
<p>This is some test <span style=\"text-decoration: underline;\">content</span> with <a href=\"\\"\\\\"http:/www.google.com\\\\"\\"\" target=\"\\"\\\\"_blank\\\\"\\"\">more</a> <em>tags</em> than I would <strong>normally</strong> add.</p>
这是一堆斜线和引号。我该怎么解决这个问题?有哪些方法或功能?我更关心链接而不是样式标签。任何建议都会很棒。
更新 1
我已经使用了stripslashes()来修复<SPAN>
标签但没有修复A
标签。
我的设置 这是我的 TinyMCE 编辑器代码:
<script>
tinyMCE.init({
mode : "exact",
elements : "content",
theme : "advanced",
plugins : "autolink,lists,spellchecker,pagebreak,advhr,advlink,iespell,inlinepopups,"
+ "print,noneditable,visualchars,nonbreaking,xhtmlxtras",
theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,bullist,"
+ "numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : "",
theme_advanced_buttons4 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_resizing : true,
width: "100%",
height: "425"
});
</script>
然后通过 AJAX 将 textareas 内容发布 (POST) 到另一个页面,然后按原样存储到数据库中。当我从我的数据库中将这个所见即所得的 HTML 打印到页面上时,我写道:
<?php
echo stripslashes($dbResults['article_body']);
?>