WMD编辑器不以编辑形式工作

时间:2016-05-24 07:29:19

标签: php wmd-editor

我正在使用WMD编辑器。 This一个。

工作正常。但问题是,我想让它与编辑表单一起使用。

现在我得到html而不是降价文字。 我的代码就像在我的编辑页面中一样。

<div id="wmd-editor" class="wmd-panel">
    <div id="wmd-button-bar"></div>
            <textarea id="wmd-input"><?php echo $row['description']?></textarea>
    </div>
    <div id="wmd-preview" class="wmd-panel"></div>
    <div id="wmd-output" class="wmd-panel"></div>

不确定这里有什么问题。

1 个答案:

答案 0 :(得分:2)

首先关闭:存储库未维护(显然已超过7年未更新),因此您应该考虑切换到活动分支。 WMD已重命名为Page Down,但您可以使用许多替代编辑器。

正如timclutton所述,您可能正在将HTML存储在数据库中。 WMD不支持从HTML到Markdown的转换。所以最好的解决方案是将内容存储为Markdown。

要执行此操作,请更改创建页面。由于我没有代码,我只会举例说明它的外观:

<form action="/create" method="POST">
    <div id="wmd-editor" class="wmd-panel">
        <div id="wmd-button-bar"></div>
            <textarea name="content" id="wmd-input"></textarea>
        </div>
    <div id="wmd-preview" class="wmd-panel"></div>
    <div id="wmd-output" class="wmd-panel"></div>
    <button type="submit">Send</button>
</form>

服务器端您现在可以将$_POST['content']的内容存储在数据库中,然后将其完全按照您现在的方式输出到编辑页面。

最后来自Page Down wiki的安全说明:

  

应该注意,就用户输入的输入而言,Markdown并不安全。几乎所有东西在Markdown中都有效,特别是<script>doEvil();</script>之类的东西。此PageDown存储库包含Stack Exchange用于清理用户输入的两个插件;请参阅下面的Markdown.Sanitizer.js的说明。