【问题标题】:How do i save or update the php page using inline ckeditor?如何使用内联 ckeditor 保存或更新 php 页面?
【发布时间】:2013-07-03 02:36:22
【问题描述】:

我刚刚获得了带有内联编辑功能的 CKEditor 4。我想为我正在开发的网站做一个 CMS。这是我想做的:

<div contenteditable="true">
//Site code
</div>
<button onclick="">Save</button>

我想要一个脚本来保存和更新我要编辑的 PHP 文件。就像获取编辑页面的内容然后将其输入到目标文件中一样home.php

我做了一些研究,但找不到一个好的简单代码,它只会更新文件,就像这个“Save data to PHP / Mysql with inline edit in CKEditor”一样。当我测试它时,它不会更新,只是将文本放在div 下,并且不会更新文件。

注意:我是这个的新手...

【问题讨论】:

    标签: php sql ckeditor inline-editing


    【解决方案1】:

    使用onsubmit事件,很简单:

    <!-- Wrap editor with form. -->
    <form action="yourPHPaction.php" method="post" id="form">
        <!-- Your inline editor. -->
        <div contenteditable="true" id="editable"></div>    
    
        <!-- This textarea will hold data for POST request, it can be hidden. -->
        <textarea id="editorData" name="editorData"></textarea> 
    
        <!-- This little fellow submits the form. -->
        <button type="submit">Submit form</button>
    </form>
    <script>
    
        var textarea = CKEDITOR.document.getById( 'editorData' ),
            form = CKEDITOR.document.getById( 'form' );
    
        // Update textarea on form submit with editor data.
        form.$.onsubmit = function() {
            textarea.setValue( CKEDITOR.instances.editable.getData() );
        }
    
    </script>
    

    另外,目前CKEditor团队开发了一种新型的创建者,它调用基于&lt;textarea&gt;的内联编辑器来简化这个过程。见票:https://dev.ckeditor.com/ticket/10280

    【讨论】:

    • 并在 yourphpaction.php 中使用类似 '$editordata=$_POST['editorData'] $sql="SQL command"' 来存储数据??
    • 请问我怎样才能让DIV Editable里面的代码适应外面的css?因为它有一些内容过滤器,我不知道如何禁用它
    【解决方案2】:

    您应该记住客户端代码(如带有 JavaScript 的 CKEditor)和服务器端代码(如 PHP)的概念。

    因此,您需要做的是将编辑后的 ​​div 发送回服务器上的 PHP 页面(可能通过您提供的链接建议的 AJAX)并更新服务器 (PHP) 端的页面。

    但是我个人建议将内容存储在数据库中并从那里读取 - 直接更新 PHP 文件的安全影响是巨大的。如果过滤不是很严格,很可能存在远程代码执行缺陷,这意味着任何人都可以在您的服务器上执行 PHP 代码。

    【讨论】:

    • 如果你不介意的话,你能给个样品吗?只是一个简单的我只是不知道 ckeditor 是如何工作的。 >.
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-16
    • 1970-01-01
    • 2012-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-23
    相关资源
    最近更新 更多