根據客戶的要求他們可以在後台手動的設置和過濾一些不應該出現的關鍵字,所以就寫出下面的代碼了喽,字符過濾程序
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>無標題文檔</title>
<link href="style/admin.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.STYLE1 { color: #FF0000;
font-weight: bold;
}
.STYLE2 {color: #0033FF}
-->
</style>
</head>
<body>
<table width="98%" border="0" align="center" style="margin-top:20px; border:1px solid #9abcde;">
<form id="form1" name="form1" enctype="multipart/form-data" method="post" action="">
<tr >
<td height="28" colspan="3" background="skins/top_bg.gif"><label> <strong><a href="#">惡意留言過濾設置</a></strong></label></td>
</tr>
<tr>
<td width="5%" height="50" align="center">
<p> </p>
<p> </p></td>
<td width="60%" align="left"><p>
在此輸入框加入你要留言的字符</p>
<p>
<?php
$result = mysql_query("Select * from gx_filter where id=1");
$rs =mysql_fetch_array($result);
?>
<textarea name="fiter_words" id="fiter_words" cols="70" rows="10"><?php echo $rs['filter_words'];?></textarea>
</p>
<p>
<input name="button" type="submit" class="nnt_submit" id="button" value="確定保存" onclick="import_check();"/>
</p></td>
<td width="35%"><label><br />
<br />
</label>
<label></label>
</td>
</tr>
<tr>
<td colspan="3" bgcolor="#DDF0FF"> [<span class="STYLE1">注</span>]惡意數據過濾格式說明:</td>
</tr>
<tr>
<td colspan="3"> 1、設置所需過濾的字符格式如 aaa|bbbb 這裡的意思就是說在網友留言中如果出現如aaa,bbbb中的任意字符我們都全把它去除掉!</td>
</tr>
<tr>
<td colspan="3"> 2、上文本框中文字請務刪除</td>
</tr>
</form>
</table>
</body>
</html>
<?php
if($_POST){
$Words = isset($_POST['fiter_words'])?$_POST['fiter_words']:'';
$sql = "Update gx_filter set filter_words='$Words' where id=1";
mysql_query($sql) or die(mysql_error());
echo "<script>alert('設置成功');location='filter.php';</script>";
}
?>
這是在設置過濾字符界面了,下面我們來看看是如何判斷並過濾那些我們客戶規定不允許出現的字符吧.
function filter_words($str){
$sql = "Select * from gx_filter where id=1 limit 1";
$result = mysql_query($sql);
$rs = mysql_fetch_array($result);
$array = explode('|',$rs['filter_words']);
if( is_array($array) ){
$array_length = sizeof($array);
for($i=0;$i< $array_length; $i++){
$str = @str_replace($array[$i],'',$str);
}
}
return $str;
}
從數據庫讀取客戶要過濾的字符,然後再如上處理就OK了.
申請:本站原創轉載請注明www.111cn.cn/phper/php.html