mysql-富文本编辑器与php后台开发是怎么结合使用的呢?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了mysql-富文本编辑器与php后台开发是怎么结合使用的呢?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3205字,纯文字阅读大概需要5分钟。
内容图文
我所知道的富文本编辑器就是像DZ论坛那样,所见所得那样的。1:但是我一直有个疑问,不是说客户端提交的数据要过滤吗,不然不就是XXS吗,DZ是UBB的方式处理的是吗?
2:那些富文本编辑器,最后提交到服务器后,那些包含html代码的,能直接存到数据库里面吗,肯定不能允许用户这样吧?
3:还有比如SF的这个Markdown编辑器原理是什么呢,它后台数据库有没有保存我们输入的html,js代码呢?
4:还有像DZ论坛这样的用户发帖,投票什么的,这个编辑器内部是怎么样的,搞不懂,找处理的源码又找不到……
我之前一直使用text文本框的,后台就直接过滤所有标签,就这么简单,但是这样就只能有普通的文本了,没有DZ那样用户发帖那样强大,现在想用一个富文本编辑器,但是不知道php后台该怎与富文本编辑器对接,比如百度的那个,或者SF的这个编辑器。
然后那个富文本编辑器插入图片,那个是上传图片,然后返回图片地址,插入到内容中吗,那DZ的那个上传附件呢,帖子中的图片还会惰性加载呢,这个是怎么实现的呢,如果是直接img标签插入到内容了实现不了吧,或者是用一个什么图片占位符什么的,然后js操作附件数据……
搞不懂,希望高手给我解释一下,我知道原理再去看代码应该会简单许多,谢谢了!
回复内容:
我所知道的富文本编辑器就是像DZ论坛那样,所见所得那样的。
1:但是我一直有个疑问,不是说客户端提交的数据要过滤吗,不然不就是XXS吗,DZ是UBB的方式处理的是吗?
2:那些富文本编辑器,最后提交到服务器后,那些包含html代码的,能直接存到数据库里面吗,肯定不能允许用户这样吧?
3:还有比如SF的这个Markdown编辑器原理是什么呢,它后台数据库有没有保存我们输入的html,js代码呢?
4:还有像DZ论坛这样的用户发帖,投票什么的,这个编辑器内部是怎么样的,搞不懂,找处理的源码又找不到……
我之前一直使用text文本框的,后台就直接过滤所有标签,就这么简单,但是这样就只能有普通的文本了,没有DZ那样用户发帖那样强大,现在想用一个富文本编辑器,但是不知道php后台该怎与富文本编辑器对接,比如百度的那个,或者SF的这个编辑器。
然后那个富文本编辑器插入图片,那个是上传图片,然后返回图片地址,插入到内容中吗,那DZ的那个上传附件呢,帖子中的图片还会惰性加载呢,这个是怎么实现的呢,如果是直接img标签插入到内容了实现不了吧,或者是用一个什么图片占位符什么的,然后js操作附件数据……
搞不懂,希望高手给我解释一下,我知道原理再去看代码应该会简单许多,谢谢了!
html代码直接存数据库,用户写的什么就存什么。
各种编辑器都是生成html代码,然后点击提交html的代码。
这有什么好疑问的吗?
html有个pre标签,你造吗?
要防止JS注入。
很简单的啊,PHP输出到前端之前,用str_replace函数,把<替换成& lt;(去掉空格),把>替换成& gt;(去掉空格)等等。
请百度“HTML特殊字符编码”。
保证标签不会起作用,JS代码不会执行就完了。
防御XSS攻击,最简单粗暴的做法就是用htmlspecialchars把特殊字符(&,",',<,>)
替换为HTML实体(&"'<>)
后输出.
$html = str_replace(array("\r\n", "\r", "\n"), '
', $html);
echo $htm;
上面这种实现非常简单,而且安全,显示也非常清爽.编辑器就一个普通的文本框textarea就好了.
防御XSS攻击,最复杂的做法就是自己写正则过滤,不过还好有HTMLPurifier库,除了能过滤XSS代码,还能把不完整的标签补全或者去掉.
purify($html);
可以通过BBCode或者Markdown标记定义一些HTML功能,比如BBCode:
[b]粗体文字[/b]
[color=#FF0000]红色文字[/color]
[img=PunBB bbcode test]http://127.0.0.1:8080/punbb/img/test.png[/img]
[url=http://127.0.0.1:8080/punbb/]PunBB forum[/url]
用户在文本框里输入BBCode标签,页面输出时把BBCode正则替换成HTML,经过HTMLPurifier过滤后安全输出.
SF的编辑器是markdown语法编辑器,源代码在此:
一个结构清晰的,易于维护的,现代的PHP Markdown解析器
我还看到网上有那种微信编辑器,纠结
内容总结
以上是互联网集市为您收集整理的mysql-富文本编辑器与php后台开发是怎么结合使用的呢?全部内容,希望文章能够帮你解决mysql-富文本编辑器与php后台开发是怎么结合使用的呢?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。