首頁 >web前端 >html教學 >如何确定在线编辑HTML的合法性_html/css_WEB-ITnose

如何确定在线编辑HTML的合法性_html/css_WEB-ITnose

WBOY
WBOY原創
2016-06-24 12:20:251219瀏覽

HTML 标签 编辑器 过滤

有一个企业网站,用户可以通过后台发布文章,
并且用户可以通过在线编辑器,编辑文章内容部份的HTML标签。
现在问题来了,就是如何确保用户通过在线编辑器提交的HTML代码中的HTML标签都完全避合?

因为目前发现这样一个情况,就是从数据库中读出含有HTML代码的文章时,
因为之前数据库中的HTML代码内,有的HTML标签并无闭合标签(比如,有开始的
却没有
),
最后导致的情况就是这样读出来的文章,会破坏掉我现有页面的布局及样式,
这种情况你们怎么解决?

完全过滤HTML是不可能的,因为用户要求保留编辑样式功能,但如何确保用户提交的HTML标签的合法性?


========================================有点乱,见谅======================================

回复讨论(解决方案)

A、用IFRAME作为自封闭的容器来显示用户文章,他编辑时啥样还啥样,不会影响你的布局。
B、接收提交的编辑内容后用处理函数检查闭合性(相对并不难,因为大多都是先进后出式的嵌套结构,少数单标签或复合标签也是有规律的),但要面临选择:是返回错误,还是自动更正?

从难易度讲,建议用A方案吧。


1、用户是要保留HTML代码编辑功能?一般用户都是不懂html的,更加不熟悉DIV布局;
2、一般网站编辑器都有“文本模式”(默认)和“代码模式”,而用户输入直接在【文本模式】。更无须涉及HTML的闭合。。
3、如果要折腾的话,写个正则吧,可以检查(匹配)HTML的合法性

1、用户是要保留HTML代码编辑功能?一般用户都是不懂html的,更加不熟悉DIV布局;
2、一般网站编辑器都有“文本模式”(默认)和“代码模式”,而用户输入直接在【文本模式】。更无须涉及HTML的闭合。。
3、如果要折腾的话,写个正则吧,可以检查(匹配)HTML的合法性

我是担心有些用户会直接把Word中的代码,帖到我WEB的在线编辑器中,然后我读的时候,会因为粘帖中的某些代码,破坏我原有的HTML样式。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn