2

我已经在这个过程中苦苦挣扎了一段时间,所以我可以使用一些帮助。

我目前有一个页面,用户可以使用 TinyMCE 编辑他的页面。

工作流程是基本的:用户进行编辑 -> 提交 -> AJAX 调用 SQL 文件 -> 数据库中的 SQL 文件更新。

问题是我必须对输入进行编码/解码,因为当 AJAX 接收到数据并在内容中包含 & 时,数据字符串将失败。所以这就是我目前所拥有的:

<script>
$(document).ready(function() {
    $('#edit').click(function () {
        var content = escape(tinyMCE.activeEditor.getContent());
        $.ajax({
            url: "AJAX_edit_information.php", 
            type: "POST",
            data: "content="+content,     
            success: function (msg) {
                //alert('blabla..');
            }       
        });
    });
}); 

AJAX_edit_information.php 包含一些检查,用于提交数据的代码是:

$inhoud = html_entity_decode(stripslashes($_POST['content']));
$query = "UPDATE informatie SET inhoud='$inhoud' WHERE id='1'";
$result = mysql_query($query);

到目前为止,我测试的大多数东西都有效,除了编码的奇怪字符。

在我提取数据的页面上,我有以下代码:

$query = "SELECT * FROM informatie";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
echo html_entity_decode(stripslashes($row['inhoud']));

当我看到文本时,我得到了一些奇怪的字符,例如:%u0308、%u0301o、%u0301.. 现在是我的问题,我在我的过程中监督什么.. 谢谢

4

1 回答 1

6

我解决了问题..

声明 TinyMCE 编辑器时,您可以选择:

tinyMCE.init({
        ...
        entity_encoding : "raw"
});

此选项控制 TinyMCE 如何处理实体/字符。可以按照下面的编码类型中所示设置该值。

更多信息查看:http ://www.tinymce.com/wiki.php/Configuration:entity_encoding

于 2013-04-12T17:01:03.213 回答