聯系信息

                        Kindeditor中插入代碼后臺無法正常顯示的解決辦法

                        2020-02-02 16:39 By 致遠 1190
                        當前位置: 企業網站建設 > KindEditor > Kindeditor中插入代碼后臺無法正常顯示的解決辦法

                        Kindeditor結合highlight可以插入代碼并支持語法高亮顯示,但是后臺編輯的時候會出現代碼視圖可見,正常視圖部分代碼不可見,如果在可視視圖修改并提交后會導致內容丟失。

                        先說一下為什么會出現這個問題:

                        1、為安全起見,程序可能會對html代碼進行轉碼(實體化),如用htmlspecialchars把<body>會轉成&g t;body &lt ;的樣子。

                        2、在調用的時候我們就需要用htmlspecialchars_decode轉換回來。這里其實是針對前臺的,如果在后臺也進行decode就會出現以上問題!如下圖中的圖片,應該按代碼顯示卻被執行了!

                        htmlspecialchars_decode導致后臺編輯器中代碼顯示錯亂

                        既然明白了為什么會導致這種情況,解決辦法就很簡單了

                        方法一(推薦):

                        前臺進行htmlspecialchars_decode解碼,后臺編輯器中刪除此操作即可。也就是不需要解碼,支持輸出,Kindeditor會幫我們處理好的。

                        方法二(有點麻煩了,完全沒必要的樣子):

                        $cont=htmlspecialchars_decode($arr['cont']);//這是編輯器內容,先解碼
                        $reg = '~<pre.*?<\/pre>~is';
                        preg_match_all($reg,$cont,$rst);//匹配出所有的pre標簽
                        foreach ($rst[0] as $key => $value) {
                            $cont=str_replace($value,'{'.md5($value).'}',$cont);//先把pre標簽進行加密
                        }
                        foreach ($rst[0] as $key => $value) {
                            $v=htmlspecialchars($value);//對pre標簽內部標簽進行轉碼
                            $cont=str_replace('{'.md5($value).'}',$v,$cont);//替換已加密的pre標簽內容為已轉碼的內容
                        }







                        © 致遠 2020-02-02,原創內容,轉載請注明出錯:Kindeditor中插入代碼后臺無法正常顯示的解決辦法

                        留下您的評論

                        > 人人爽人人澡人人高潮_免费无码国产V片在线观看_18禁裸乳无遮挡免费观看_国产99在线 | 欧美_中文字幕无码无码专区 亚洲精品一品区二品区三品区 看国产一毛片在线看手机看 精品国产精品久久一区免费式 无遮挡裸体免费视频尤物 无敌神马琪琪在线观看影院 国产精品美女久久久浪潮AV 肉色超薄丝袜脚交一区二区 狠狠人妻久久久久久综合 天黑黑影院在线观看免费中文 肥臀熟女一区二区三区