这篇文章给大家分享的是有关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 ('Switch_1@switch.com','Administrative User','H',SHA1('admin'),1);
感谢各位的阅读!关于“php如何实现邮件管理器”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。