仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1593|回复: 18
打印 上一主题 下一主题

[学习教程] PHP网站制作之给whygod,若何过滤高亮显示不法字符!...

[复制链接]
再见西城 该用户已被删除
跳转到指定楼层
#
发表于 2015-2-4 00:24:12 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
然后大吼:别人可以,我为什么就不可以?(是不是有点阎罗教练的味道,默默的确是电影看多了,抽嘴巴是会痛的,各位其实明白这个道理了就行了)高亮显示   <?
//我只是做一个测试,假如再用相似tmd的字符串,必定要注重,假如字符串中的字符呈现在$StartWordStrHtml或$EndWordStrHtml中,你需求修正上面的preg_replace中的划定规矩
$CheckedMessage="Hello!!他X的..他....X...的....How are you m d ";     //the message to be checked
echo $CheckedMessage."<br>";
$CheckedWords=array("他X的","tmd");//要过滤的不法字符,假如你需求把单个的字符也过滤,好比:他ererX000的过滤出来他,X,的,你就没需要把过滤字符设置成"他X的"只需设置成$CheckedWords=array("他","X","的");就能够了
$StartWordStrHtml="<u><b><font color='#FF0000'>";
$EndWordStrHtml="</font></b></u>";
$CheckOther= true;//设置标示位,是不是显示单个的字符,假如设置成true,上面的if(strstr……)就不需求了
for($i=0;$i<count($CheckedWords);$i++){
     if(strstr($CheckedMessage,$CheckedWords[$i])){ //此处可去失落
         $CheckedMessage=eregi_replace($CheckedWords[$i],$StartWordStrHtml.$CheckedWords[$i].$EndWordStrHtml,$CheckedMessage);//假如只过滤诸如"他X的"字符串(是字符串,不是单个字符),可以直接写这句,同时把$CheckOther设置成false
     }
     if($CheckOther == true){
         $CharStringLength = strlen($CheckedWords[$i]);
         for($j=0;$j<$CharStringLength;$j++){
             $AssumeLength=1;//假定截取长度
             if(ord(substr($CheckedWords[$i],$j,$AssumeLength))>0xa0){//假如汉字,假定长度加一
                $AssumeLength++;         
             }
             $SubstrChar = substr($CheckedWords[$i],$j,$AssumeLength);            
             $CheckedMessage=preg_replace("/(?<!fon)".$SubstrChar."/",$StartWordStrHtml.$SubstrChar.$EndWordStrHtml,$CheckedMessage);//交换字符,同时假如字符含有t的时分<font>中的t不会被交换,假如需求过滤失落在$StartWordStr或在$EndWordStrHtml中的的字符,需求修正划定规矩,不然的话将会呈现乱码            
             if($AssumeLength!=1){//假如以后截取字符为汉字
             $j++;        
             }
         
         }
     }
}
echo $CheckedMessage;
//只是一个复杂的测试,但愿对你有所匡助,但愿你能触类旁通,好运!

?>  你发奋努力,熟悉了安全方面的问题,然后又设计了一些程序,感觉还不错。
18#
发表于 2015-7-17 02:49:21 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
不帅 该用户已被删除
17#
发表于 2015-7-13 21:29:01 | 只看该作者
对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。
简单生活 该用户已被删除
16#
发表于 2015-6-28 09:13:56 | 只看该作者
最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。
admin 该用户已被删除
15#
发表于 2015-6-14 18:57:49 | 只看该作者
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
小女巫 该用户已被删除
14#
发表于 2015-5-4 02:42:39 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
再见西城 该用户已被删除
13#
 楼主| 发表于 2015-5-1 05:12:22 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
精灵巫婆 该用户已被删除
12#
发表于 2015-4-26 08:11:31 | 只看该作者
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
因胸联盟 该用户已被删除
11#
发表于 2015-3-29 05:02:31 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
再现理想 该用户已被删除
10#
发表于 2015-3-24 21:36:30 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
深爱那片海 该用户已被删除
9#
发表于 2015-3-24 03:04:46 | 只看该作者
最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。
愤怒的大鸟 该用户已被删除
8#
发表于 2015-3-22 20:10:21 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
小魔女 该用户已被删除
7#
发表于 2015-3-16 04:36:10 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
蒙在股里 该用户已被删除
6#
发表于 2015-3-8 16:20:35 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
兰色精灵 该用户已被删除
5#
发表于 2015-3-7 02:12:56 | 只看该作者
爱上php,他也会爱上你。
小妖女 该用户已被删除
地板
发表于 2015-2-22 20:17:06 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
山那边是海 该用户已被删除
板凳
发表于 2015-2-11 01:09:09 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
莫相离 该用户已被删除
沙发
发表于 2015-2-6 03:14:38 | 只看该作者
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
谁可相欹 该用户已被删除
楼主
发表于 2015-2-4 02:05:47 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 20:28

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表