要做一个类似的功能:

如设置一个日期每月20号,在这日期的前几天来提醒用户该送礼了。

日期可以设置为几月几日、也可为每月几号等。提醒时间可以是当天提醒、前一周提醒等?

这种功能后台数据库该如何设计,需要几张表? 消息推送功能有了,如何检测什么时候推送? 后台写个定时任务来不断运行?

回复内容:

要做一个类似的功能:

如设置一个日期每月20号,在这日期的前几天来提醒用户该送礼了。

日期可以设置为几月几日、也可为每月几号等。提醒时间可以是当天提醒、前一周提醒等?

这种功能后台数据库该如何设计,需要几张表? 消息推送功能有了,如何检测什么时候推送? 后台写个定时任务来不断运行?

两个定时任务,三个表

1.礼物表,里面有什么时候发送字段,是否发送字段

2.消息表,是否发送,发送的是什么,发送给谁

3.消息人表,每个人的消息这提取

任务一,扫描任务表,如果没发送且到时间了,插入一条数据到消息表

任务二,扫描消息表,有消息了就根据系统发送消息,,,,,他是个公共表,不一定就用来发礼物

需要判断应用环境,在web访问中,再用户访问时去做判断.

需要几张表看你们具体业务需求,业务需求不复杂的一张信息表足矣。你要是设置定时的肯定需要设置脚本的。或者你用第三方推送极光推送都可以的

数据字典

1 用户信息表用字段is_accept 来存放用户是否开启消息提示

2 建立消息推送配置表

id 主键

task_obj扩展字段

title 标题

content 内容

on_time 结束时间

status 平台是否开启消息提示

days 提前几天提醒(这个字段也可以给用户设定,存在用户信息表,让用户来决定什么时候提示他)

tips 推送几次

interval_time 推送间隔(同一个用户多久推送一次)

3 消息推送日志表

id 主键id

uid 用户id

tid 消息配置id

on_time 发送推送时间

4 php业务逻辑

//获取要用户表is_accept为1的所有用户循环

foreach{

//获取推送配置信息表

//判断用户是否已推送,

//判断 当前时间-用户上次推送时间>=配置间隔时间

//判断是否已达到最大推送次数

//写入推送记录表

}

5 实现

如果是linux系统 建议使用系统命令curl

windows系统 建议自己写进程守护,或者使用urlcron

相关标签:php

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

php 赠送礼品功能开发,类似礼物说送礼提醒的功能该怎么做?相关推荐

  1. iOS开发-类似微信录音上滑取消功能

    iOS开发-类似微信录音上滑取消功能 前言 效果 代码 先自定义UIButton 使用 监听上下滑动代码 前言 在社交媒体中开发中遇到需要做类似微信录音上滑取消功能,例子,虽然不是很好看,但是细节满满 ...

  2. 利用openCV实现中值滤波自定义滤波窗口尺寸的功能(类似halcon中的median_rect函数功能)

    利用openCV实现中值滤波自定义滤波窗口尺寸的功能(类似halcon中的median_rect函数功能) 在halcon图像库中有一个常用的中值滤波算子median_rect: median_rec ...

  3. 织梦php开发tags功能开发,织梦全网最新联动筛选功能的实现(单选和多选)可显示分类的文章...

    之前写过这篇文章<>下面二次开发织梦联动筛选是之前升级版,修复手机端无法加载_m.htm列表模板BUG: 首先需要说明的是这个功能需要在模板里面用到php标签,所以需要在后台模板引擎禁用标 ...

  4. java支付宝对账功能开发_java后台实现支付宝对账功能

    完成支付宝支付.查询的接口之后,我们应该还需要定时与支付宝进行对账,以确保商户系统的订单信息是正确的,想知道支付宝支付.查询接口实现过程的亲们,可移步到上一篇有详细过程. 现在我们来讲一下支付宝对账的 ...

  5. android签到功能开发,Android简单实现app每月签到功能

    本文实例为大家分享了Android实现app每月签到功能的具体代码,供大家参考,具体内容如下 先上一张效果图: 其中这些签到的效果图是在网上找的,然后重要用到的控件就是 GridvVew 了, 代码很 ...

  6. 软件工程中新功能开发流程

    在软件生命周期内,根据市场和客户的需求,会不断的引入新的功能.由于经验.技术.视野.开发流程等方面的差异,不同的软件工程师的开发出的功能质量各不相同;经常出现功能不全.稳定性差.并发低.容错性差等缺点 ...

  7. android 画板之橡皮擦功能开发

    记录一下橡皮擦功能开发. 讲一下原理: 橡皮擦功能要用到Paint类的一个属性: paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DS ...

  8. 一对一直播系统源码开发,礼物打赏中追加、连击等功能的实现

    在一对一直播系统源码开发中,多种礼物打赏方式,才更能吸引用户的眼球,所在礼物打赏功能开发时,要实现追加.连击等功能. 一对一直播系统源码的礼物追加.连击功能是如何实现的呢?首先礼物从左边滑出,做一个连 ...

  9. 开发类似比心的陪玩约玩app,需要定制开发这些功能,涉足领域广

    带你升级带你飞,教你走位随你拖累,语音聊天随时指挥,录屏重播无限复盘--最近,类似比心app的陪玩约玩软件有点火,不仅有大批大神愿意入驻平台,也有很多怀着交友.学技术.上分心思的用户来到陪玩程序中寻找 ...

最新文章

  1. jquery实用应用之jquery操作radio、checkbox、select
  2. python中如何调用java_在Python程序中调用Java代码的实现
  3. 目标意识应求成大于避败 思考时不要先意识到身不足而自我设限
  4. Js中Number对象
  5. php实现栏目三种类型,WordPress后台edit-tags.php里无限栏目分类实现
  6. 洛谷P1108 低价购买[DP | LIS方案数]
  7. Linux下实现一个网卡绑定多个IP地址
  8. sicily 1022. Train Problem
  9. 正点原子STM32F103(精英版)------串行通信
  10. C4droid导出程序
  11. t分布 u分布 卡方分布_几种分布概述(正态分布/卡方分布/F分布/T分布)
  12. [微信小程序开发者工具] × #initialize
  13. 案例分析默写题1__立项管理_可行性研究的内容_可行性研究报告的内容
  14. 穷和尚与富和尚的故事
  15. 江苏省数学建模省赛答辩准备
  16. 饿了么技术往事(上)
  17. Python实用文档(持更)
  18. ddr2是几代内存_教你区分DDR1 DDR2 DDR3内存条的方法
  19. 市面上有哪几种门_目前市面上的成品木门有哪几种
  20. 前端优化之DNS预解析

热门文章

  1. html5岗位需求,HTML5培训分享H5的优势和岗位要求
  2. 注册表里如何添加开机启动项
  3. GPRS模块与STM32的数据传输
  4. 互联网金融做大数据风控的九种维度
  5. 酒至数杯 天空软件下载
  6. Vue 框架-06-条件语句 v-if 实现选项卡效果
  7. CSS3中引入多种自定义字体(font-face)
  8. 《软件功能测试自动化实战教程》—第6章6.5节使用环境变量的参数化
  9. 鸿蒙灵儿宠物奔驰法拉利,鄂P66666,从奔驰换成法拉利,车主还有限量版劳斯莱斯,中国只有三台...
  10. 蚁视牵手联创互联,可持续拓展“第六媒体”新业态