用PHP和ACCESS写聊天室(十)

2001-01-03 10:35:42  作者
func.php3
代码如下
%26lt;?php
function suiji($max)
{
srand((double)microtime()*1000000);
$x=rand();
$y=getrandmax();
$r=$x/$y*($max-1);
$r=round($r++);
return $r;
}

function StrOccurs($sStr, $sFind){
$sTemp=$sStr;
$iLen=strlen($sFind);
$iCount=0;
while (true){
if (strstr($sTemp, $sFind))
break;
else
$sTemp = instr($sTemp,strpos($sTemp,$sFind)+$iLen);
$iCount++;
}
}
return $iCount;
}

function StrDupl($sStr, $iCnt){
$ret=%26quot;%26quot;;
for($i=1;$i%26lt;=$iCnt;$i++)
$ret.=$sStr;
return $ret;
}

function DelQuot($sStr){
$s=str_replace(chr(124),%26quot;%26amp;brvbar;%26quot;,$sStr);
$s=str_replace(chr(39),%26quot;%26amp;acute;%26quot;,$s);
$s=str_replace(chr(34),%26quot;%26amp;quot;%26quot;,$s);
return s;
}

function DelTag($sStr){
$bNeed=%26quot;False%26quot;;
$sOther=strtoupper($sStr);
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;TABLE%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/TABLE%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;SCRIPT%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/SCRIPT%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;BODY%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/BODY%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;HTML%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/HTML%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;HEAD%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/HEAD%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;FORM%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/FORM%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;INPUT%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/INPUT%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;OPTION%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/OPTION%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;SELECT%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/SELECT%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;APPLET%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/APPLET%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;OBJECT%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/OBJECT%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;MENU%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/MENU%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;FRAMESET%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/FRAMESET%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;FRAME%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/FRAME%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;IFRAME%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/IFRAME%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;STYLE%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;/STYLE%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;%26lt;BASE%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed!=%26quot;True%26quot; || !strstr($sOther,%26quot;FONT-SIZE:%26quot;)) $bNeed=%26quot;True%26quot;;
if ($bNeed==%26quot;True%26quot;)
return str_replace(%26quot;%26gt;%26quot;,%26quot;%26amp;gt;%26quot;,str_replace(%26quot;%26lt;%26quot;,%26quot;%26amp;lt;%26quot;,$sStr));
else
return $sStr;
}

function AddLost($sStr){
$ret=$sStr;
$ret.=StrDupl(%26quot;%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/FONT%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;FONT%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/FONT%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/B%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;B%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/B%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/I%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;I%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/I%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/U%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;U%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/U%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/S%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;S%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/S%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/STRIKE%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;STRIKE%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/STRIKE%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/STRONG%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;STRONG%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/STRONG%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/SMALL%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;SMALL%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/SMALL%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/CITE%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;CITE%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/CITE%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/EM%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;EM%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/EM%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/CODE%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;CODE%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/CODE%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/SAMP%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;SAMP%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/SAMP%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/KBD%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;KBD%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/KBD%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/VAR%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;VAR%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/VAR%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/DFN%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;DFN%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/DFN%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/BIG%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;BIG%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/BIG%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/SUP%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;SUP%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/SUP%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/SUB%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;SUB%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/SUB%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/H1%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;H1%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/H1%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/H2%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;H2%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/H2%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/H3%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;H3%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/H3%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/H4%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;H4%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/H4%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/H5%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;H5%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/H5%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/H6%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;H6%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/H6%26gt;%26quot;)));
$ret.=StrDupl(%26quot;%26lt;/H7%26gt;%26quot;, (StrOccurs(strtoupper($ret), %26quot;%26lt;H7%26quot;) - StrOccurs(strtoupper($ret), %26quot;%26lt;/H7%26gt;%26quot;)));
return $ret;
}
?%26gt;