分享php邮件管理器源码


Posted in PHP onJanuary 06, 2016

本文为大家提供了php邮件管理器源码,希望大家喜欢。
1、需求分析
管理员应该能够建立和修改邮件内容。
管理员应该能够将文本或HTML格式的新闻信件发送给一个列表中的所有订阅者。
用户应该能够通过注册使用一个站点,并且可以进入并修改他们的个人资料。
用户应该能够订阅该站点的任意一个列表的新闻信件。
用户应该能够取消一个邮件列表的订阅。
用户应该能够根据个人喜好以HTML格式或纯文本格式存储新闻信件。
处于安全的原因,用户应该不能将邮件发送到列表,或者不能看见其他用户的邮件地址。
用户和管理员应该能够查看有关邮件列表的信息。
用户和管理员应该能够查看过去已经噶送给某个列表(存档文件)上的新闻信件。

2、解决方案
2.1 用户权限图

分享php邮件管理器源码

分享php邮件管理器源码

分享php邮件管理器源码

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

分享php邮件管理器源码

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

分享php邮件管理器源码

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程序设计有所帮助。

PHP 相关文章推荐
Get或Post提交值的非法数据处理
Oct 09 PHP
?繁体转换的class
Oct 09 PHP
Win2003服务器安全加固设置--进一步提高服务器安全性
May 23 PHP
让Nginx支持ThinkPHP的URL重写和PATHINFO的方法分享
Aug 08 PHP
php 对输入信息的进行安全过滤的函数代码
Jun 29 PHP
解析php函数method_exists()与is_callable()的区别
Jun 21 PHP
深入解析fsockopen与pfsockopen的区别
Jul 05 PHP
PHP中数组定义的几种方法
Sep 01 PHP
Codeigniter上传图片出现“You did not select a file to upload”错误解决办法
Jun 12 PHP
ThinkPHP中I(),U(),$this->post()等函数用法
Nov 22 PHP
Laravel 前端资源配置教程
Oct 18 PHP
如何在PHP中使用数组
Jun 09 PHP
CI(Codeigniter)的Setting增强配置类实例
Jan 06 #PHP
WordPress开发中短代码的实现及相关函数使用技巧
Jan 05 #PHP
WordPress开发中用于获取近期文章的PHP函数使用解析
Jan 05 #PHP
Yii中表单用法实例详解
Jan 05 #PHP
php实现购物车功能(下)
Jan 05 #PHP
Yii中创建自己的Widget实例
Jan 05 #PHP
php实现购物车功能(上)
Jul 23 #PHP
You might like
采用PHP函数memory_get_usage获取PHP内存清耗量的方法
2011/12/06 PHP
PHP共享内存用法实例分析
2016/02/12 PHP
php读取本地json文件的实例
2018/03/07 PHP
PHP isset()及empty()用法区别详解
2020/08/29 PHP
Save a File Using a File Save Dialog Box
2007/06/18 Javascript
弹出广告特效(一个IP只弹出一次)的代码
2007/07/27 Javascript
jquery 图片 上一张 下一张 链接效果(续篇)
2010/04/20 Javascript
js实现俄罗斯方块小游戏分享
2014/01/31 Javascript
JS实现带缓冲效果打开、关闭、移动一个层的方法
2015/05/09 Javascript
javascript弹出窗口中增加确定取消按钮
2016/06/24 Javascript
jquery编写日期选择器
2017/03/16 Javascript
简单实现JavaScript弹幕效果
2020/08/27 Javascript
jQuery实现获取动态添加的标签对象示例
2018/06/28 jQuery
npm的lock机制解析
2019/06/20 Javascript
详解mpvue实现对苹果X安全区域的适配
2019/07/31 Javascript
基于form-data请求格式详解
2019/10/29 Javascript
web.py在模板中输出美元符号的方法
2014/08/26 Python
跟老齐学Python之集合的关系
2014/09/24 Python
深入理解Python中字典的键的使用
2015/08/19 Python
深入解析Python中的descriptor描述器的作用及用法
2016/06/27 Python
Python3.5编程实现修改IIS WEB.CONFIG的方法示例
2017/08/18 Python
运动检测ViBe算法python实现代码
2018/01/09 Python
pyinstaller参数介绍以及总结详解
2019/07/12 Python
python 将dicom图片转换成jpg图片的实例
2020/01/13 Python
Python实现转换图片背景颜色代码
2020/04/30 Python
使用HTML5做个画图板的方法介绍
2013/05/03 HTML / CSS
查询优化的一般准则有哪些
2015/03/08 面试题
老公给老婆的道歉信
2014/01/10 职场文书
保洁公司服务承诺书
2014/05/28 职场文书
个人贷款授权委托书样本
2014/10/07 职场文书
学习党史心得体会2016
2016/01/23 职场文书
聊一聊python常用的编程模块
2021/05/14 Python
Python序列化与反序列化相关知识总结
2021/06/08 Python
Mysql关于数据库是否应该使用外键约束详解说明
2021/10/24 MySQL
HTML常用标签超详细整理
2022/03/19 HTML / CSS
windows server2016安装oracle 11g的图文教程
2022/07/15 Servers