2015-11-29 17 views
-1

我製作了這個過濾器來審查那些詛咒他們的電子郵件。代碼如下:此電子郵件過濾器不起作用?

foreach ($badWords as $word) { 
if (strpos($msg,$word) !== false) { 
    $mail=false; 
    echo"Please do not curse in your messages. We are a child-friendly community."; 
} 
} 

現在的問題是,無論是什麼消息我輸入時,它會發出「請不要cursz」消息。

這只是一個部門,而不是整個頁面。 $msg是組合的消息,標題和消息。

回答

0

它似乎工作,如果你關閉括號之間的if語句。
你的代碼似乎工作正常,也許問題在別處。

if ((strpos($msg,$word)) !== false)

順便說 注意,你的腳本將回顯字符串每個壞詞發現。 也許這樣的事情是更好:

$msg = 'stupid is a bad word'; 
$counter = 0; 
$badWords =['dumb','stupid']; 

foreach ($badWords as $word) { 
if ((strpos($msg,$word)) !== false) { 
     $counter++; 
} 
} 

if ($counter == 0){ 
    echo 'good guy'; 
}else{ 
    $mail=false; 
    echo"Please do not curse in your messages. We are a child-friendly community."; 
} 

demo
demo2