新项目

这个项目制作可能需要一定要的时间(也有可能高考过后)
但是此项目作用对每个人不一样,有可能没有用处

该项目名字暂定为:ACG-D
意义:ACG顾名思义,当然是二次元啦,-D我不清楚,随便写的(总之就是做一个图库,但是这个图库是公开的)

他是一个随即图库,即随机调用图片。
但是不是调用一个公有库,而是支持用户自行注册,自己上传图片(目前设计不支持上传图片,可以上传其他图床的链接)
然后可以自己分组组成一个小库单独调用(就是自己可以创建专属于自己的库)
这跟自己使用源代码创建有点相似,只不过是单独使用,故用处不是很大。
此网站设计大概目的为了新人(新博主等)PHP运算及服务器速度不够的用户「开发预计2022年,也有可能我高考后,故采用备案后使用国内主机+国内(或全球)CDN/DCDN」

灵感来自:Shiro’s Alley 博主同我QQ聊天引发

项目开发

注意:本项目不开源(除非我放弃此项目或其他人接管)

项目任然处于开发阶段,并且开发速度极慢

主要文件在这里

结构目录

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

├ admin
│ └ 敏感文件
├ auth
│ ├ index.php
│ ├ login.php
│ └ register.php
├ center
│ ├ index.php
│ └ setting.php
├ sources
│ ├ css
│ │ ├ mdui.css
│ │ └ mdui.min.css
│ ├ fonts
│ │ └ roboto
│ │ └ ......
│ ├ icons
│ │ └ material-icons
│ │ └ ......
│ ├ img
│ │ └ ......
│ └ js
│ ├ mdui.esm.js
│ ├ mdui.js
│ └ mdui.min.js
├ plugins
│ ├ PHPMailer
│ │ └ ......
│ └ 一大堆敏感文件
├ config.inc.php
├ index.php
└ README.md

项目开发思想

注册与登录

注册采用构思为,输入邮箱后获取邮箱信息,再结合PHPMailer发送邮件功能
发送邮箱内容为验证码,并且在发送时使用代码rand随机生成6位数验证码,并以SESSION模式保存(仅当场15分钟有效)
后注册部分采用输入后与SESSION进行匹对
部分代码如下所示

  1. 获取词头,获取您在注册第几步,且发送代码

    1
    2
    3
    4
    5
    6
    7
    8
    9
    // 获取值
    $step=htmlspecialchars($_GET["step"]);
    // 注册邮箱函数
    // 条件判断
    // 发送邮件
    if (isset($_POST["mail"])) {
    setcookie( "reg_email", $_POST["email"] , time() + 300 , "/" );
    header("location:?step=2");
    }
  2. 检测是否存在跳步数

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    if (empty($step) or $step == "1") {
    if (empty($step)) {
    header("location:?step=1");
    }
    unset($_SESSION["Range"]);
    /* 此处省略部分代码 */
    } elseif ($step == "2") {
    // 检测用户是否跳过步骤一
    if (isset($_COOKIE["reg_email"]) == NULL) {
    header("location:?step=1");
    }
    // 如果未生成注册码
    if (isset($_SESSION["Range"]) == NULL) {
    // 生成6位数随机验证码 生成SESSION,禁止多次发送邮件
    $_SESSION["Range"] = rand(100000,999999);
    // 转让Cookie到SESSION
    $_SESSION["email"] = $_COOKIE["reg_email"];
    // 发送邮件函数
    include("../plugins/mail.php");
    EmailRegister($sender_mail,$setting);
    }
  3. 邮箱填写Form

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <!-- 邮箱输入,发送邮件 -->
    <form name="Email" action="" method="post" onsubmit="return validateForm()">
    <h1 class="mdui-text-center">用户注册 &mdash; <?PHP echo $setting["Info"]["name"] ?></h1>
    <div class="mdui-textfield mdui-m-b-2">
    <i class="mdui-icon material-icons">email</i>
    <input class="mdui-textfield-input" name="email" type="email" placeholder="请输入邮箱"/>
    <div id="email-info" class="mdui-textfield-helper">例如 FL@x-lf.cn</div>
    </div>
    <input name="mail" type="submit" class="mdui-center mdui-btn mdui-btn-raised mdui-ripple mdui-color-theme-accent" value="验证"/>
    </form>
    <div class="mdui-typo mdui-text-right mdui-m-y-3">
    <a href="./login.php">前往登录</a>
    </div>

登录就不写了,很简单的COOKIE + SESSION登录

核心内容构思

基础API作为检测服务是否正常,采用 JSON 获取词头为 True 作为判断依据
数据库使用代码

1
$sql_conn->connect_error

关于服务获取,本网站构建为前端内容,后端构建暂未开始
后端服务获取采用数据库模式,而非生成一份txt文件
每一次调使用数据库,但是避免频繁调用导致数据库服务紧张(故调用一次将会生成缓存,至于缓存是生成text文件还是使用Radis看后期开发)
在后端,依旧使用代码

1
2
// 获取值
$uid=htmlspecialchars($_GET["uid"]);

获取头信息,以确定调用私有库
(但是这样设计方面,一个用户只能有一个私有库)这符合我构思,我当初构思就这样「不想给你们太多库」

(好像写的不是很完整,就先这样吧)

项目截图

新曲目

专辑:《Late In Autumn》
时间(2021-04-17)我只发行了伴奏版,正常版本还在审核。不过可以在BiliBili或者网易云音乐电台找到

BiliBili发行版:https://www.bilibili.com/audio/au2240919
网易云音乐电台版:http://music.163.com/dj?id=2488273861

这是我工程轨道图

除草

博客自开学以来,管的就不是很多了,就是看看博客评论,还有友链审核。

友链相关

友链信息

1
2
3
4
5
6
7
8
本次删除友链为无法访问和(我方)单方面友链
- 删除 16 友链
+ 添加 2 友链

修改/移位友链
- 友人链 1 个
- 开后宫 1 个
+ 资源/商城/论坛/其他 2 个

友链申请规则修改

1
2
3
4
5
6
7
8
9
10
11
友链通过率
- 友链通过率 30~50% 左右,主要看自己想不想加~
+ 友链通过率 10~30% 左右,视情况处理

邮件通知
- 审核通过一定会以邮件方式通知,如果您超过 15 天未收到通知(请将 gm@x-lf.cn 设为白名单),则拒绝了您(请见谅)
+ 审核通过一定会以邮件方式通知,在目前未通过也会收到我的通知(如30天以上未收到,则我可能忽略掉了,可再次申请)

对内容要求
+ 要求博文中原创内容 ≥2 个
+ 站点创立时间超过 1 个月并且稳定运行