微信小程序php签到功能,微信小程序签到功能

微信小程序php签到功能,微信小程序签到功能本文实例为大家分享了简易微信小程序签到功能的具体代码 供大家参考 具体内容如下一 效果图点击签到后二 数据库用一张数据表存用户签到的信息 每次用户签到都会往表中添加一条记录了用户 id 和签到日期的数据 如下图三 后端后端写两个接口 一个用于查询用户今日是否签到和签到记录总数 一个用于添加用户签到信息到数据库 这里用的是 python 的 flask 框架 1 查询用户签到信息接口 app route

本文实例为大家分享了简易微信小程序签到功能的具体代码,供大家参考,具体内容如下

一、效果图

点击签到后

二、数据库

用一张数据表存用户签到的信息,每次用户签到都会往表中添加一条记录了用户id和签到日期的数据,如下图

三、后端

后端写两个接口,一个用于查询用户今日是否签到和签到记录总数,一个用于添加用户签到信息到数据库。这里用的是python的flask框架。

(1)查询用户签到信息接口:

@app.route(‘/get_sign/’)

def get_sign(user_id):

try:

data=get_sign_info(user_id)

except Exception as e:

return jsonify({‘status’:0,’Exception’:str(e)})

return jsonify({‘status’:1,’data’:data})

def get_sign_info(user_id):

conn = sqlite3.connect(‘test.sqlite’)

cursor = conn.cursor()

cursor.execute(‘select date from sign where user_id=?’,(user_id,))

all_date=set([x[0] for x in cursor.fetchall()])

now_date=date.today().strftime(‘%Y-%m-%d’)//将日期字符串化

if now_date in all_date:

signed=True

else:

signed=False

total=len(all_date)

conn.close()

return {‘total’:total,’signed’:signed}

查询到所有签到日期后用set去除重复项,然后判断一下当天的日期是否在其中,如果不在其中,signed=False表示今日未签到。签到总数就是all_date的长度

使用了datetime库来获取日期信息。from datetime import date

(2)添加用户签到信息接口:

@app.route(‘/sign/’)

def sign(user_id):

try:

update_sign(user_id)

except Exception as e:

return jsonify({‘status’:0,’Exception’:str(e)})

return jsonify({‘status’:1})

def update_sign(user_id):

now_date=date.today().strftime(‘%Y-%m-%d’)

conn = sqlite3.connect(‘test.sqlite’)

cursor = conn.cursor()

cursor.execute(‘insert into sign (user_id,date) values(?,?)’,\

(user_id,now_date))

conn.commit()

conn.close()

四、小程序前端

wxml文件

点击此处签到

今日已签到

已签到{
{total_sign}}天

wxss文件

.image{

float:left;

width: 140rpx;

height: 140rpx;

margin-right: 7%;

margin-left:20%;

}

.sign{

margin-top: 10%;

}

.sign_info{

width: 100%;

color: #666;

font-size: 43rpx;

}

js文件

get_sign: function(){

var that = this;

var userId = wx.getStorageSync(“userId”);

wx.request({

url: ‘http://服务器公网ip:80/get_sign/’+userId,

method: “GET”,

success: function (res) {

if (res.data.status == 1) {

that.setData({

total_sign: res.data.data.total,

signed: res.data.data.signed,

})

}

else{

console.log(“status error: ” + res.data.Exception)

}

},

})

},

sign:function(){

var that = this;

var userId = wx.getStorageSync(“userId”);

wx.request({

url: ‘http://服务器公网ip:80/sign/’ + userId,

method: “GET”,

success: function (res) {

if (res.data.status == 1) {

that.setData({

total_sign: that.data.total_sign+1,

signed: true,

})

wx.showToast({

title: ‘成功’,

icon: ‘success’,

duration: 2000

})

}

else {

console.log(“status error: ” + res.data.Exception)

}

},

})

},

用户登录后,会立即触发get_sign函数,从数据库获取用户签到信息存到page的data中,页面也会显示用户今日是否签到和签到总数。

用户点击签到后,会保存签到信息,并更新data。用showToast弹窗提示签到成功。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。 ad51e517755f8fd6a7ec83ced4ecfaf3.png

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/211289.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午10:46
下一篇 2026年3月18日 下午10:47


相关推荐

  • java集合源码分析(四):LinkedList「建议收藏」

    java集合源码分析(四):LinkedList「建议收藏」概述LinkedList是一个不保证线程安全的、基于双向的双端链表的实现的List集合。LinkedList继承了AbstractSequentialList抽象类,在实现List接

    2022年8月16日
    8
  • for语句的执行过程

    for语句的执行过程for 语句的执行过程

    2026年3月19日
    2
  • spring任务调度scheduled_golang 任务调度

    spring任务调度scheduled_golang 任务调度1、任务调度接口TaskScheduler提供了多种方法来调度将来某个时间点要运行的任务。2、触发器Trigger实现PeriodicTrigger和CronTrigger。3、@Scheduled注解创建定时任务4、@Async注解异步方法执行,value属性指定任务执行器。5、task:scheduler、task:executor创建调度器和执行器…

    2022年10月11日
    5
  • Android so文件浅析「建议收藏」

    Android so文件浅析「建议收藏」一.简述Android中的so文件是动态链接库,是二进制文件,即ELF文件。多用于NDK开发中。二.基础知识三.so文件格式解析so文件即ELF文件,是一个二进制文件,我们可以用UltraEdit打开查看。如下:上面有一处很明显看到,在so文件解析出来的头文件字段是ELF,也印证.so是一个ELF格式的问题。ELF文件…

    2026年1月24日
    4
  • matlab作函数图像,matlab绘制函数图像

    matlab作函数图像,matlab绘制函数图像matlab 绘制函数图像 2011 06 0214 46 40 标签 杂谈前两天在一个偶然机会下画了这个函数图像 命令如下 plot linspace 2 2 100 linspace 2 2 100 1 3 发现一个很有意思的现象 负半轴的图像处于正半轴 命令行提示 Warning Imaginarypar orYarguments

    2026年3月18日
    2
  • UML构件图

    UML构件图组件图 ComponentDia 又称为构件图 他描述的是在软件系统中遵从并实现一组接口的物理的 可替换的软件模块 构件图 构件 Component 接口 Interface 关系 Relationship 端口 Port 连接器 Connector 在面向对象系统的物理方面进行建模要用到两种图 组件图和配置图 二 包含的元素 1 组件 Component amp

    2026年3月19日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号