分享php郵件管理器源碼
本文為大家提供了php郵件管理器源碼,希望大家喜歡。
1、需求分析
管理員應該能夠建立和修改郵件內(nèi)容。
管理員應該能夠將文本或HTML格式的新聞信件發(fā)送給一個列表中的所有訂閱者。
用戶應該能夠通過注冊使用一個站點,并且可以進入并修改他們的個人資料。
用戶應該能夠訂閱該站點的任意一個列表的新聞信件。
用戶應該能夠取消一個郵件列表的訂閱。
用戶應該能夠根據(jù)個人喜好以HTML格式或純文本格式存儲新聞信件。
處于安全的原因,用戶應該不能將郵件發(fā)送到列表,或者不能看見其他用戶的郵件地址。
用戶和管理員應該能夠查看有關郵件列表的信息。
用戶和管理員應該能夠查看過去已經(jīng)噶送給某個列表(存檔文件)上的新聞信件。
2、解決方案
2.1 用戶權限圖
2.2 郵件列表管理器中的文件列表
2.3 郵件列表管理器中可能的操作
3、實現(xiàn)數(shù)據(jù)庫
CREATE DATABASE mlm; #創(chuàng)建mlm數(shù)據(jù)庫 use mlm; #使用mlm數(shù)據(jù)庫 CREATE TABLE lists #列表 ( listid INT AUTO_INCREMENT NOT NULL PRIMARY KEY, #列表ID listname CHAR(20) NOT NULL, #列表名 blurb VARCHAR(255) #列表主要內(nèi)容 ); 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, #發(fā)送方 subject CHAR(100) NOT NULL, #主題 listid INT NOT NULL, #列表ID status CHAR(10) NOT NULL, #郵件狀態(tài),是否被發(fā)送 sent DATETIME, #發(fā)送時間 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 #創(chuàng)建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 ('Switch_1@switch.com','Administrative User','H',SHA1('admin'),1);
希望本文所述對大家學習php程序設計有所幫助。
相關文章
php中通過DirectoryIterator刪除整個目錄的方法
這篇文章主要介紹了php中通過DirectoryIterator刪除整個目錄的方法,實例分析了php通過DirectoryIterator類操作目錄的技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-03-03PHP圖片處理之使用imagecopy函數(shù)添加圖片水印實例
這篇文章主要介紹了PHP圖片處理之使用imagecopy函數(shù)添加圖片水印實例,本文給出了一個簡單的入門級的自定義函數(shù)示例,需要的朋友可以參考下2014-11-11