1

我在 PHP 中使用 tinyMCE

我有一个带有 tinyMCe 编辑器的页面。我正在尝试的是,当用户在编辑器上完成工作时,他单击保存按钮并提交表单,并且 tinyMCE 内容保存在数据库中,并且 tinyMCE 内容仍然保留在编辑。

现在我到目前为止所做的是。

我有一个包含编辑器的脚本 History_View.php。另一个脚本 History_Model.php 将 tinyMCE 文本插入数据库。

有两个问题正在发生。

  1. 当我在我的 tinyMCE 编辑器中编辑后单击保存按钮时,文本成功转到我的 History_Model.php 但数据(即 tinyMCE 的内容)没有存储在数据库中。虽然 statments 看起来运行成功并且没有error.Here 是要插入 DB 的代码。$historyy 是这里的内容。

    public static function setHistory($id,$historyy)
    {
        self::$connection=DBCon::ConnectToDB();         
        mysql_query("call UpdateCompanyHistory($id,".utf8_encode($historyy).")");
        mysql_close(self::$connection);         
        header("Location:History_View.php?data=".$historyy);
        exit();
    }
    
  2. 查询工作后,我使用 php 标头将内容附加到 url 中并移回我的编辑器页面(即 History_View.php),我试图在编辑器中再次放置该文本。当我使用它放回

     echo"
    
     <script type='text/javascript'>
    
       function loadDefaultTinyMCEContent()
       {    
               tinyMCE.activeEditor.selection.setContent('".$_GET['editorData']."');
       }
     </script>
    
     ";
    

现在这就是我编辑我的tinymce的方式,问题是在所有过程之后图片再次出现在编辑器中,但不是红色文本,因为tinymce内容被切断,即它没有返回完整的文本。

  <p><img src="http://www.veryicon.com/icon/png/Folder/Hyperion/Games.png" alt="" width="256" height="256" /><strong><span style="color:

现在我不知道它为什么要剪切内容以及为什么不将其插入到数据库中。]

4

2 回答 2

1

在将数据发送到您的数据库之前尝试 SQL 转义数据。 http://www.php.net/manual/en/function.mysql-real-escape-string.php

此外,建议在较新的代码上使用 mysqli 而不是旧的 mysql。

于 2012-05-23T17:03:32.860 回答
0

关于您的第二个问题:您永远不应该将内容附加到您的网址。url 的长度是有限的,因为您可以仔细查看内容:

<p><img src="http://www.veryicon.com/icon/png/Folder/Hyperion/Games.png" alt="" width="256" height="256" /><strong><span style="color:

该内容明显被剥离。例如,您应该使用 ajax 工作。然后,您可以从响应中获取内容并将其设置为您的编辑器实例,即使不需要重新加载整个页面。

于 2012-05-25T07:48:12.530 回答