程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> 分享php郵件管理器源碼

分享php郵件管理器源碼

編輯:PHP綜合

本文為大家提供了php郵件管理器源碼,希望大家喜歡。
1、需求分析
管理員應該能夠建立和修改郵件內容。
管理員應該能夠將文本或HTML格式的新聞信件發送給一個列表中的所有訂閱者。
用戶應該能夠通過注冊使用一個站點,並且可以進入並修改他們的個人資料。
用戶應該能夠訂閱該站點的任意一個列表的新聞信件。
用戶應該能夠取消一個郵件列表的訂閱。
用戶應該能夠根據個人喜好以HTML格式或純文本格式存儲新聞信件。
處於安全的原因,用戶應該不能將郵件發送到列表,或者不能看見其他用戶的郵件地址。
用戶和管理員應該能夠查看有關郵件列表的信息。
用戶和管理員應該能夠查看過去已經噶送給某個列表(存檔文件)上的新聞信件。

2、解決方案
2.1 用戶權限圖

2.2 郵件列表管理器中的文件列表

2.3 郵件列表管理器中可能的操作

3、實現數據庫

CREATE DATABASE mlm; #創建mlm數據庫 
 
use mlm; #使用mlm數據庫 
 
CREATE TABLE lists #列表 
( 
 listid INT AUTO_INCREMENT NOT NULL PRIMARY KEY, #列表ID 
 listname CHAR(20) NOT NULL, #列表名 
 blurb VARCHAR(255) #列表主要內容 
); 
 
CREATE TABLE subscribers #訂閱者 
( 
 email CHAR(100) NOT NULL PRIMARY KEY, #郵箱 
 realname CHAR(100) NOT NULL, #真實姓名 
 mimetype CHAR(1) NOT NULL, #想要接收郵件類型 
 password CHAR(40) NOT NULL, #密碼 
 admin TINYINT NOT NULL #管理員標記 
); 
 
CREATE TABLE sub_lists #訂閱-列表關系表 
( 
 email CHAR(100) NOT NULL, #郵件 
 listid INT NOT NULL #列表ID 
); 
 
CREATE TABLE mail #郵件表 
( 
 mailid INT AUTO_INCREMENT NOT NULL PRIMARY KEY, #郵件ID 
 email CHAR(100) NOT NULL, #發送方 
 subject CHAR(100) NOT NULL, #主題 
 listid INT NOT NULL, #列表ID 
 status CHAR(10) NOT NULL, #郵件狀態,是否被發送 
 sent DATETIME, #發送時間 
 modified TIMESTAMP #最後一次修改時間戳 
); 
 
CREATE TABLE images #圖像表 
( 
 mailid INT NOT NULL, #郵件ID 
 path CHAR(100) NOT NULL, #路徑 
 mimetype CHAR(100) NOT NULL #圖片類型 
); 
 
GRANT SELECT,INSERT,UPDATE,DELETE #創建mlm用戶 
ON mlm.* 
TO mlm@localhost IDENTIFIED BY 'password'; 
 
#插入訂閱者標記 
INSERT INTO subscribers VALUES 
('admin@localhost','Administrative User','H',SHA1('admin'),1); 
 
INSERT INTO subscribers VALUES 
('[email protected]','Administrative User','H',SHA1('admin'),1); 

希望本文所述對大家學習php程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved