ホームページ >バックエンド開発 >PHPチュートリアル >bbcode の解析時に関連する 2 つの問題が発生しました

bbcode の解析時に関連する 2 つの問題が発生しました

WBOY
WBOYオリジナル
2016-06-13 12:07:271191ブラウズ

bbcode解析时遇见的两个问题!

本帖最后由 sky94132003 于 2014-10-08 01:28:06 编辑 网上一直没找到合适的bbcode解析类
所以东抄西抄的做了一个
但是出现两问题了,请各位高手协助一下。

代码在最下

问题一:bbcode解析时遇到[code][/code]不做任何处理...比如表情/其他bbcode等不转义

问题二:如何过滤HTML?
我用BBCODE保存资料就是不想用户用HTML.....

但我测试时...发现如何手动输入:
<div style="color:red">dddd</div><br />


竟然能真的有效


所以如果是插入一些js或者iframe应该也是可以的吧?

有什么方法可方止?

下面提供整个class 代码, 刚开始, 东抄西抄组装,还没优化好,请见谅


<br><br>9b3e0273ea4434f77ecf446dd5d9e58b$10d36329ec37a2cc24d42c7229b69747a',<br>            '5a8028ccc7a7e27417bff9f05adf5932$172ac96585ae54b6ae11f849d2649d9e6',<br>            '8591c4f00c0e01c02382149d5fa321e3$154bdf357c58b8a65c66d7c19c8e4d114',<br>            'e03b848252eb9375d56be284e690e873$1f9b1a63a4adfa4dff7dd04d18bd21043',<br>            'f5d188ed2c074f8b944552db028f98a1$1f16b1740fad44fb09bfe928bcc527e08',<br>            'a34de1251f0d9fe1e645927f19a896e8$1fd273fcf5bcad3dfdad3c41bd81ad3e5',<br>            'b6c5a531a458a2e790c1fd6421739d1c$1b90dd5946f0946207856a8a37f441edf',<br>            '09930019c4b762e3023c59a122e9a7d4$116b28748ea4df4d9c2150843fecfba68',<br>            'c1bcbb7934b8f8ec63e93219da565e1e$116b28748ea4df4d9c2150843fecfba68',<br> '382dda7b80b7c6b46bc12df7afb36a3f$116b28748ea4df4d9c2150843fecfba68',<br> 'd93143ed75462667cfd7230af4d039bd$116b28748ea4df4d9c2150843fecfba68',<br> '07d0de131f89153593e2534d96a1e0e6$254bdf357c58b8a65c66d7c19c8e4d114',<br> '9521daf52bfe3757a13fe371d3cab227$254bdf357c58b8a65c66d7c19c8e4d114',<br> '&lt ;span style="font:$1;">$254bdf357c58b8a65c66d7c19c8e4d114',<br> '2e153cc8b5838b98dd106269c3a048b6$25db79b134e9f6b82c0b36e0489ee08ed ',<br> '2a7463697885e2a437d3546e9bdf7697',<br> '401948e8986b50c86c757a105a112c5f',<br> 'b4d7e222e796bfefabc373036b6fc166065276f04003e4622c4fe6b64f465b88'<br> );<br> return nl2br(preg_replace($find,$replace,$text));<br> }<br><br> // 表情转义<br> private function parseSmiley($text){<br> // Smiley to image<div class="clear"></div>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。