2011-03-30 66 views
0

我想過濾發送的電子郵件。電子郵件與PHP郵件()函數一起發送。我希望在不修改任何PHP文件的情況下儘可能讓電子郵件只發送到特定域的電子郵件,而不是其他郵件。我無權訪問SMTP服務器。阻止發送非特定域名的電子郵件

+0

你認爲這可能是可能的,而不需要觸摸任何php文件,並且在發送郵件服務器中沒有任何過濾器?唯一的方法是使用一些JavaScript,但是這並不能阻止用戶殺死JavaScript並提交表單。 – ITroubs 2011-03-30 16:06:38

+1

我想你可以坐在主機設施外面,當他拿出滿滿是1和0的數字袋子時,攔截電子郵遞員,用萬用表/示波器把它們穿過它們,並且找出不適合的那些釋放。 – 2011-03-30 16:15:06

回答

0

您應該能夠查看「to」字段的關聯數組,並使用php regex類來匹配您黑名單的域。

1

以防萬一這可以幫助別人......如果電子郵件是在提交表單(或類似行爲)後發送的,那麼可以將表單html元素的action屬性更改爲指向一個新的php文件,一個過濾器。一旦通過(如果是),您將重定向到「正確」目的地以發送電子郵件。過濾可以是這樣簡單的:

$good = "*@mydomain.foo, *@localhost"; 

$good = explode(',', $good); 

if (pattern_grep($_POST['email'], $good)) { 
    // action 
} 
相關問題