腦友記廣場 -> 新手上路 -> 過濾內容出毛病 登錄 -> 註冊 -> 回復主題 -> 發表主題

zozzen 2008-04-24 21:00
現在經常上大陸, 但看報紙時, 如果出現敏感詞, 就會被迫斷線, 有時甚至要 reset 才可以重新上網 . (我主要靠手機上網).

為了減輕問題, 最好能過濾一下敏感詞, 但以下方法過濾英文還好, 中文卻有問題.

過濾方法:
$fh = fopen("ban.txt","r");

while($word = fgets($fh))
{
  if (eregi(trim($word), $outtext))
    {
echo "error";
    exit;
    }
}


ban.txt 內容:
start
china
中國
法國
德國
vietnam


在上述程式中, 我要過濾 china, vietnam 這些字是成功的,
但中文字上, 只能過濾排 "中國" 一詞, 其餘字就過濾不到了. 究竟發生甚麼事呢?

謝謝高人指教迷津......

maninnet 2008-04-27 16:32
相信是編碼的問題, gb/big5/unicode 內碼是不一樣的

zozzen 2008-05-01 00:32
現在我用以下方法放入 ban.txt 內,
似乎可以解決到問題了...

例如我想封掉 "國家機密" 這組字, 就會寫:
%E5%9C%8B%E5%AE%B6%E6%A9%9F%E5%AF%86
%E5%9B%BD%E5%AE%B6%E6%9C%BA%E5%AF%86
國家機密
国家机密


查看完整版本: [-- 過濾內容出毛病 --] [-- top --]


Powered by PHPWind v4.0.1 Code © 2003-05 PHPWind
Gzip enabled

You can contact us