//替代SQL
//输入时替代
public string InCheckStr(string str)
{
if (str != null)
{
int i;
string fy_in, fy_out;
fy_in = "exec|insert|select|delete|update|script|chr|'|--";
fy_out = "exec|insert|select|delete|update|script|chr|’|==";
//将fy_in截断保存到string[]数组中,该数组中的数据都是半角状态
string[] fy_inf = fy_in.Split('|');
//将fy_out截断保存到string[]数组中,该数组中的数据都是全角状态
string[] fy_outf = fy_out.Split('|');
for (i = 0; i <fy_inf.Length; i++)
{
//将所有全角状态的字符代替所有的半角字符
str = str.Replace(fy_inf[i], fy_outf[i]);
}
return str;
}
return str;
}
//输出时替代
public string OutCheckStr(string str)
{
if (str != null)
{
int i;
string fy_in, fy_out;
fy_in = "exec|insert|select|delete|update|script|chr|’|==|:";
fy_out = "exec|insert|select|delete|update|script|chr|'|--|:";
string[] fy_inf = fy_in.Split('|');
string[] fy_outf = fy_out.Split('|');
for (i = 0; i < fy_inf.Length; i++)
{
str = str.Replace(fy_inf[i], fy_outf[i]);
}
return str;
}
return str;
}
//过滤SQL InJection
public bool SqlIn(string str)
{
if (str != null)
{
str = str.ToLower();
string Fy_In = "'|;|and|(|)|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare";
string[] fy_inf = Fy_In.Split('|');
for (int i = 0; i < fy_inf.Length; i++)
{
if (str.IndexOf(fy_inf[i]) != -1)
{
return true;
}
}
}
return false;
}
//==========================
//脏话过滤
//=========================
public string FilterBadWords(string msg)
{
string badwords = "法轮工|共产党|妈妈的|我靠|操|fuck|sb|bitch|他妈的";
string[] tempstr = badwords.Split('|');
string finalstr = msg;
try
{
for (int i = 0; i < tempstr.Length; i++)
{
finalstr = finalstr.Replace(tempstr[i], new String('*', tempstr[i].Length));
}
}
catch (Exception ex)
{
if (ex != null)
{
Response.Write(ex.Message);
}
}
return finalstr;
}