多人博客管理系统(完整代码和解析请下载资源)

案例初始化准备

在这里插入图片描述
在这里插入图片描述
npm init -y生成package.json文件。
在这里插入图片描述
node.js安装node modules
node_modules是安装node后用来存放用包管理工具下载安装的包的文件夹。比如webpack、gulp、grunt这些工具。在node.js中模块与文件是一一对应的,也就是说一个node.js文件就是一个模块。

模板中外链的相对路径,相对的是地址栏中的请求路径的。请求路径可能会变来变去,不安全,模板文件中用绝对路径改成相对路径,用 / 即可
解决方式是,把相对路径改成绝对路径

**{{include ‘./common/header.art’}}**调用模板可以用相对路径,因为是模板引擎解析的,上部分讲的外链必须用绝对路径,是因为是浏览器解析的。

项目功能实现

  1. 登陆
    在这里插入图片描述
    在这里插入图片描述
    要获取post从客户端请求的参数用第三方模块,body-parser。

{{extend ‘./common/layout.art’}}
art-template可以方便服务器展示页面给客户端的东西
属于子模版
D

新增用户功能分析

在这里插入图片描述
Joi
JavaScript对象的规则描述语言和验证器。
在这里插入图片描述
在这里插入图片描述
SyntaxError: Unexpected identifer错误
在这里插入图片描述

//1  引入joi模块
const Joi = require('joi');

//2  定义对象的验证规则
const schema = {
	//required方法的作用为是对响应的属性变成必填项
	username: Joi.string().min(2).max(5).required().error(new Error('username属性没有通过验证')),
	birth: Joi.number().min(1900).max(2020).error(new Error('birth没有通过验证'))
};



async function run () {
	//异步函数抛出异常的方法为try catch
	try {
	//3  实施验证 这个方法返回的是一个promiss对象
	await Joi.validate({username: 'ad', birth: 1800}, schema);
	} catch (ex) {
		console.log(ex.message);
		return;
	}
	console.log('验证通过');
	
}
run();

原文输出

在模板引擎中,如果要使用原文输出,只需在模板中数据的前面加上 @ 符号即可

<td>{{@$value._id}}</td>

数据分页

当数据库中的世俗据非常多时,数据需要分批次显示,这时就需要用到数据分页功能。

分页功能核心要素:
在这里插入图片描述
总页数:Math.ceil(总数据条数/每页显示数据条数)

分页功能用到的两个查询方法:
在这里插入图片描述
数据开始的位置=(当前页-1)*每页显示的数据条数

注意:分页操作下一页报错,因为减号会自动将page转换为数值,所以改成以下语法:

用户信息修改

在这里插入图片描述

用户信息删除

在这里插入图片描述
bodyPaser只能接收普通表单传递过来的参数,表单里面的上传文件需要转换成二进制,bodyPaser不能接收二进制参数。
这时需要用到formidable

formidable第三方模板

在这里插入图片描述

文件读取 FileReader

在这里插入图片描述
javascript中异步方法不能通过返回值的方式获取结果,需要监听事件

数据分页mongoose-sex-page

在这里插入图片描述
在这里插入图片描述

文章评论

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
LxBlog 多用户博客个人主页系统,一套基于php+mysql 数据库平台架构的多用户博客系统,该系统融合了Blog的最新元素,拥有强大的个人主页系统,独立的二级域名功能,灵活的用户模版系统,丰富的朋友圈和个性相册功能。 部分修正改进功能 1.改进个人页面的日志列表页的摘要 2.改进相册个人后台发表方式 3.改进音乐前台列表页为显示歌曲列表,点击试听后弹出播放窗口,取消音乐上传 4.改进个人首页中显示所加入朋友圈的更新信息功能  5.改进最新推送的文章在朋友圈的其他圈友中显示功能  6.改进日志同时推送到多个朋友圈的支持功能 7.改进朋友圈系统页列表、会员排行列表 8.改进朋友圈系统页 9.改进圈主推荐文章列表 10.改进写朋友圈写文章功能,即在圈子中加入"写文章"功能,转入个人后台编写,写文章后默认推送到该圈子 11.改进朋友圈邀功能 12.改进头像大小控制 13.改进书签功能 部分新增功能: 1.增加日志、评论、留言表情 2.增加验证问题 3.增加在article.php页面中和该文章tag相关的文章 4.增加tags广告词锁定 5.增加列表页"隐藏日志","好友可见日志" 链接. 6.增加心情,天气在发表日志页 7.增加"上一篇","下一篇",在文章阅读页 8.增加"转移个人分类"功能,在个人后台日志列表页 9.增加日志管理的搜索功能 10.增加附件批量上传 11.增加文件和商品集成格式在日志发布过程中 12.增加相册前台图片列表页,单个图片显示页面 13.增加相册个人页面单图显示页面功能,增加图片播放器 14.增加短消息功能 15.增加系统首页博客文章、人数、今日文章数、评论数量的显示 16.增加最新博客内容在论坛首页的显示 17.增加个人分类在论坛推送到blog的文章 18.增加推送设定,即当博客向论坛推送时,管理员可以设置只允许推送至哪个或者哪些版块 19.增加随机访问列表 20.增加好友日志更新列表,在个人日志页面 21.增加可视化风格编辑 22.增加论坛文集 23.增加找回密码功能 24.增加好友分类 25.增加摘要分界符 26.增加自定义关键字链接 27.增加博主回复评论 28.增加转载功能
免费个人博客系统(兼多用户博客系统)是支持一个空间2个网站的全能型网站管理系统,本免费个人博客系统通用和拓展性强,博客、文章系统、商城、企业网站、个性化论坛等类型网站都可以使用,将来网站无论如何转型或拓展,只需要修改模板就可以实现,无需重建网站。本系统不同于以往任何逻辑架构的网站程序。本软件开发者希望通过注重商业化开发,助力用户通过网络创业和赚钱,当然您也可以通过这个软件在互联网高效地展示自己。 详细说明: 1.本个人博客系统可以用于商业用途,本软件官方、开发者不收取任何授权费用; 2.本个人博客系统是支持一个空间2个网站的全能型博客系统; 3.本个人博客系统通用和拓展性强,博客、文章系统、商城、企业网站、个性化论坛等类型网站都可以使用; 4.本个人博客系统功能强大,代码少,运行效率更高,程序运行速度是其它主流同类软件的3~4倍,内存占用不到其它主流同类软件的五分之一; 5.开启和关闭会员注册,开启和关闭普通会员投稿功能; 6.会员功能拓展到了兼职专题功能,SEO设置和开放特约编辑的多用户不同权限管理功能等; 7.超级管理员可无密码一键登录任意会员后台,管理员用受限登录会员身份后台发布信息,也可让网站攻击者无法猜解密码; 8.自动生成手机版网站,系统默认带www的域名为PC模板站,不带www的顶级域名为手机站,不增加维护难度,就可以同时拥有2个网站; 9.博客程序还包含订单、秒杀、限时抢购和数量虚拟功能,助力用户互联网创业和商业化运营,就看脑洞大开的你怎么使用了; 10.本个人博客系统能够适应各种界面浏览器,后台可手机随时随地访问、管理和更新网站; 11.可一键切换成.shtml、.html、.htm、.asp、.aspx、.cgi、.php、.jsp、.cgi、/ 等网页后缀,模拟不同语言编程的网站程序; 12.前端页面精简,前端编码不用div标签,不用id、class规则的CSS样式,最大限度精简前端代码,鼓励用户抛弃div+CSS前端代码编写模式,我们这样做不是为了迎合HTML5,只是为了更合理的应用HTML标签; 13.安装程序自动识别和设置伪静态; 14.全站无死角SEO设置; 15.强大的内链逻辑,特别适应大数据类型网站使用; 16.强大的广告和精准广告设置; 17.数据缓存模式,不依赖外部服务器组件和其它插件,不额外占用服务器系统内存资源; 18.删除局部缓存和一键清除全部缓存; 19.可设置邮件实时通知新订单和访客留言; 20.可设置管理员回复留言可同时邮件通知留言者; 21.可查看和删除无用上传文件,为将来数据备份节省时间和空间; 22.特色的tag标签功能; 23.分类、tag标签、url表单填写自动补缺; 24.url表单可自动生成拼音,也可以用汉字,自动转码,有利于SEO搜索引擎排名; 25.开放式PHP原生态模板,用户任意修改、穿插内容或广告,无需花时间研究额外规则,模板修改成本更低; 26.可对模板备份,使用备份模板,并可对模板恢复系统初始状态; 27.模板修改全站页面秒更新; 28.可自定义SQL语句的图片展示页面; 29.后台可控制各个模块是否开启验证码、设置验证码长度,以及设置验证码破解难度; 30.访客留言关键词过滤; 31.可自定义导航; 32.可在线编辑js和CSS文件; 33.本免费个人博客系统(兼多用户博客系统)无后门。
免费个人博客系统(兼多用户博客系统)是支持一个空间2个网站的全能型网站管理系统,本免费个人博客系统通用和拓展性强,博客、文章系统、商城、企业网站、个性化论坛等类型网站都可以使用,将来网站无论如何转型或拓展,只需要修改模板就可以实现,无需重建网站。本系统不同于以往任何逻辑架构的网站程序。本软件开发者希望通过注重商业化开发,助力用户通过网络创业和赚钱,当然您也可以通过这个软件在互联网高效地展示自己。 新版本: 新增wd()方法可以在任何模板调取任何文章商品数据,并自动生成缓存。 新版本还增加了十万多天然钻石及其它商品对接免费接口等。 详细说明: 1.本个人博客系统可以用于商业用途,本软件官方、开发者不收取任何授权费用; 2.本个人博客系统是支持一个空间2个网站的全能型博客系统; 3.本个人博客系统通用和拓展性强,博客、文章系统、商城、企业网站、个性化论坛等类型网站都可以使用; 4.本个人博客系统功能强大,代码少,运行效率更高,程序运行速度是其它主流同类软件的3~4倍,内存占用不到其它主流同类软件的五分之一; 5.开启和关闭会员注册,开启和关闭普通会员投稿功能; 6.会员功能拓展到了兼职专题功能,SEO设置和开放特约编辑的多用户不同权限管理功能等; 7.超级管理员可无密码一键登录任意会员后台,管理员用受限登录会员身份后台发布信息,也可让网站攻击者无法猜解密码; 8.自动生成手机版网站,系统默认带www的域名为PC模板站,不带www的顶级域名为手机站,不增加维护难度,就可以同时拥有2个网站; 9.博客程序还包含订单、秒杀、限时抢购和数量虚拟功能,助力用户互联网创业和商业化运营,就看脑洞大开的你怎么使用了; 10.本个人博客系统能够适应各种界面浏览器,后台可手机随时随地访问、管理和更新网站; 11.可一键切换成.shtml、.html、.htm、.asp、.aspx、.cgi、.php、.jsp、.cgi、/ 等网页后缀,模拟不同语言编程的网站程序; 12.前端页面精简,前端编码不用div标签,不用id、class规则的CSS样式,最大限度精简前端代码,鼓励用户抛弃div+CSS前端代码编写模式,我们这样做不是为了迎合HTML5,只是为了更合理的应用HTML标签; 13.安装程序自动识别和设置伪静态; 14.全站无死角SEO设置; 15.强大的内链逻辑,特别适应大数据类型网站使用; 16.强大的广告和精准广告设置; 17.数据缓存模式,不依赖外部服务器组件和其它插件,不额外占用服务器系统内存资源; 18.删除局部缓存和一键清除全部缓存; 19.可设置邮件实时通知新订单和访客留言; 20.可设置管理员回复留言可同时邮件通知留言者; 21.可查看和删除无用上传文件,为将来数据备份节省时间和空间; 22.特色的tag标签功能; 23.分类、tag标签、url表单填写自动补缺; 24.url表单可自动生成拼音,也可以用汉字,自动转码,有利于SEO搜索引擎排名; 25.开放式PHP原生态模板,用户任意修改、穿插内容或广告,无需花时间研究额外规则,模板修改成本更低; 26.可对模板备份,使用备份模板,并可对模板恢复系统初始状态; 27.模板修改全站页面秒更新; 28.可自定义SQL语句的图片展示页面; 29.后台可控制各个模块是否开启验证码、设置验证码长度,以及设置验证码破解难度; 30.访客留言关键词过滤; 31.可自定义导航; 32.可在线编辑js和CSS文件; 33.本免费个人博客系统(兼多用户博客系统)无后门。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值