本文實例講述了PHP的郵件群發系統phplist配置方法。分享給大家供大家參考,具體如下:
phplist是一個十分不錯的郵件群發系統,讓我們可以很方便地群發電子雜志、小廣告(^_^)等。
最近幫一個老師搭建郵件群發系統,用的就是phplist。但是網上關於搭建該系統的資料很零碎,需要費些功夫組合起來才行。而既然我已經做了這個工作,就拿出來分享吧,希望對大家有用。(另外,phplist或是phpmailer通過gmail發送郵件比通過其他郵箱發送還要麻煩一些,如果你需要通過gmail發送,在看完這篇文章講的基本配置後,請參考《phplist及phpmailer(組合使用)通過gmail發送郵件的配置方法》來進行進一步的配置)
1.下載用最新版phplist(我用的是phplist-2.10.12)。
2.將public_html下的lists目錄放到自己的web目錄下(服務器上)。
3.修改lists/config/config.php,在其20行左右處修改數據庫相關信息,然後在MySQL中建立與$database_name同名的空數據庫(建議改數據庫連接校對為utf8_general_ci,防止中文亂碼)。
4.通過浏覽器訪問服務器上/lists/admin/,此時會提示數據庫未初始化,點擊“initialise database”鏈接,進行數據庫初始化。初始化時可能會有一張表(user_blacklist_data)出現初始化錯誤,那張表是關於用戶黑名單的,我不需要此功能,不影響使用也就不用管這個錯誤了。但如果你不能容忍這個錯誤,我這裡也有一個解決方案:找到lists/admin/structure.php中的
"user_blacklist" => array( "email" => array("varchar(255) not null unique","Email"), "added" => array("datetime","When added to blacklist"), "index_1" => array("emailidx (email)",""), )
修改為
"user_blacklist" => array( "email" => array("varchar(233) not null unique","Email"), "added" => array("datetime","When added to blacklist"), "index_1" => array("emailidx (email)",""), )
drop掉數據庫重建,並重新初始化數據庫就好了。
5.下面還要進行一些基本配置:
仍然是lists/config/config.php,在190行左右處找到
define("TEST", 1);
修改為
define("TEST", 0);
因為只有非測試模式才能真正發送郵件。
然後在650行左右處找到
define("PHPMAILERHOST",'');
此為smtp服務器名,我用的是sohu的郵箱,所以改為
define("PHPMAILERHOST",'smtp.sohu.com');
往下幾行可以找到
#$phpmailer_smtpuser = 'smtpuser'; #$phpmailer_smtppassword = 'smtppassword';
將其前面用於注釋的“#”去掉,並填寫自己發送郵件時所使用的用戶名和密碼,例如我會將其改為
$phpmailer_smtpuser = '[email protected]'; $phpmailer_smtppassword = 'mypassword';
如果你使用的不是gmail郵箱的話,那麼應該是可以開始發送郵件了(我測試過的有sohu郵箱、qq郵箱、大學學校郵箱)——但需要注意的一點是,在發送測試郵件時目標地址必須是已經存在於你的user列表中的email地址,否則發送會失敗。
如果你使用的是gmail,請參見我的另外一篇文章《phplist及phpmailer(組合使用)通過gmail發送郵件的配置方法》。
更多關於PHP相關內容感興趣的讀者可查看本站專題:《PHP網絡編程技巧總結》、《PHP基本語法入門教程》、《php操作office文檔技巧總結(包括word,excel,access,ppt)》、《php日期與時間用法總結》、《php面向對象程序設計入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。