iT邦幫忙

0

請問大家怎麼做純HTML送到文章顯示的頁面

我覺得我的標題問的怪怪的
其實我的問題是

當我們建立一個文字編輯器給使用者編輯文章
但是使用者使用純html編碼
可是如果使用者故意少一個close的tag(ex: 少打一個</table>等等)
就會造成前台破版的問題
影響前台的顯示

請問有人知道這個問題要怎麼處理嗎?!

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
16
wiseguy
iT邦超人 1 級 ‧ 2013-01-09 22:21:09
最佳解答

不知道你後台是用什麼程式語言處理的?可以看看你用的程式是否有處理 html 的函數能使用,或者你可以使用比如 Tidy 這種工具幫你做 html 的過濾。它會幫你把缺的 tag 補好,就不必擔心網頁被寫爛的 html 破壞了。不過要對 <script> 特別小心處理或過濾。如果允許 <script> 就有可能會被 XSS 攻擊。

yiying iT邦新手 1 級 ‧ 2013-01-09 22:49:07 檢舉

你好,我是用PHP

wiseguy iT邦超人 1 級 ‧ 2013-01-09 23:09:38 檢舉

那就再好不過了,打開 Tidy 的支援吧

yiying iT邦新手 1 級 ‧ 2013-01-10 22:46:26 檢舉

好 我會找時間來研究Tidy 放馬過來

8
slime
iT邦大師 1 級 ‧ 2013-01-09 18:58:25
  1. 禁用 HTML , 把所有的大小於符號改成 > <
    2a 檢查必要的關閉符號, 如果有 table 卻沒有 /table 就禁止存檔.
    2b 自動加上結束標籤p
yiying iT邦新手 1 級 ‧ 2013-01-09 22:53:52 檢舉

可是結束標籤百百種... 暈

4
炎之虛空
iT邦高手 3 級 ‧ 2013-01-10 10:45:26

1.強制用

&lt;pre class="c" name="code">
str_replace

強迫過濾掉
2.
請使用即見即所得編輯器XDD
3.
把PO文者扁一頓

yiying iT邦新手 1 級 ‧ 2013-01-10 22:46:37 檢舉

把PO文者扁一頓 +1

我要發表回答

立即登入回答