>  기사  >  백엔드 개발  >  PHP 메일 관리자 소스 code_php 기술 공유

PHP 메일 관리자 소스 code_php 기술 공유

WBOY
WBOY원래의
2016-05-16 20:00:501069검색

이 기사는 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 프로그래밍을 배우는 모든 사람에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.