2011-05-16 87 views
2

如果某個頁面被訪問,是否有辦法發送電子郵件通知?
(觸發電子郵件說網頁被查看)如何在訪問頁面時發送電子郵件通知?

即,用戶來到此頁面:thank-you.php
並且在頁面加載時,電子郵件會自動發送到網站的管理員。
然後用戶在發送此電子郵件觸發器後立即重定向到另一個頁面。

編輯--- 我需要檢查用戶是否來自特定的域名或URL。
這是爲了避免漏洞或其他misc。提交黑客。

有什麼建議嗎?

+2

該代碼是否需要能夠分辨出人類和機器人之間的差異?你只對獨特的訪問者感興趣,或者每次頁面被擊中時你想要一封電子郵件嗎?你是否需要實施某種門檻,以便在人們刷新頁面的時候不會被電子郵件淹沒? – 2011-05-16 17:45:19

+0

是的Pheonix,它應該檢查一些東西。它需要檢查它是否來自特定的域。將這個添加到問題中。 – detonate 2011-05-16 17:47:57

回答

3

嘗試:

<?php 
// The message 
$message = "Line 1\nLine 2\nLine 3"; 

// In case any of our lines are larger than 70 characters, we should use wordwrap() 
$message = wordwrap($message, 70); 

// Send 
mail('[email protected]', 'My Subject', $message); 

// Redirect 
header('Location: anotherpage.php'); 
?> 
+0

Richard,有沒有一種方法可以在檢查URL引用符是否符合某個域名的情況下添加此項? – detonate 2011-05-16 21:53:25

+0

@detonate是的,這是可能的。您可以使用:if(isset($ _ SERVER ['HTTP_REFERER'])&& preg_match('/^http:\\/\\/www \\。yourdomain.com \\ //',$ _ SERVER ['HTTP_REFERER' ]))'。請記住,這是由用戶代理設置的。並非所有的用戶代理都會設置它,有些提供了將HTTP_REFERER修改爲功能的功能。某些防病毒軟件將刪除HTTP_REFERER。總之,它不能真正被信任。 – AndersTornkvist 2011-05-16 21:57:30

+0

好的感謝提示理查德。你會有另一種替代建議嗎? – detonate 2011-05-16 23:23:42

-1

是的。只需在您的網頁使用在任何地方:PHP Mail

+0

傑德,編輯和編輯我的問題。有沒有一種方法可以在檢查URL引用者是否符合某個域名的情況下添加此項? – detonate 2011-05-16 21:54:08

1

是的,mail功能。

但我認爲你應該重新考慮這個設計 - 想象一下,如果頁面突然被成千上萬的用戶擊中,會發生什麼?或者是一個錯誤的網絡爬蟲。日誌文件或數據庫更新很容易處理。

+0

這是Anders的事情之一。我需要檢查用戶是否來自特定的域名。這會足夠安全嗎? – detonate 2011-05-16 17:54:49

+0

詢問將要處理郵件的人,並詢問你自己將如何處理郵件。是否應該自動啓動手動程序? – 2011-05-16 17:59:13

+0

不,只是爲了通知有人通過電子郵件訪問了此頁面。 – detonate 2011-05-16 18:03:33

相關問題