微信小程序登录授权、获取用户头像增加样式【完整源码】

完善功能:

  • 通过open-data展示用户头像
  • 授权页结合https://blog.csdn.net/weidong_y/article/details/79636386而来。

LOGIN.html

login.wxss

login.js

Thinkphp微信签名

结合:https://150643.com/499.html

微信公众号主动推送消息

 

一个API示例

转载:http://blog.csdn.net/u013488308/article/details/78904865

ThinkPHP5开发Api接口简单实例

ThinkPHP5开发Api接口简单实例

这个实例实现这样一个功能:
前端提交学生学号(sno)给Api Api接口返回此学生的基本信息

API接口端

(请求端) HTML


(请求端) C层控制器

转载:http://blog.csdn.net/u013488308/article/details/78904841

TP如何开发安全的API接口

找了这都快一个月也没理解到底如何正确的开发安全的API接口!
1、如何开发一个pc web android ios 通用的api接口;
2、如何保证开发的接口安全;
在坛子里找了很多也都没有解决,只会发帖求助下。

我目前理解的接口开发方式:
数据库 —–> TP开发业务逻辑 并提供HTTP服务输出JSON数据 ——–>终端发起HTTP请求调用根据返回的json数据进行显示操作

虽然看着好像没啥 但是这样别人知道了接口地址就能请求 不安全 (安全逻辑如何处理)

对应安全逻辑 我目前理解的是:
1、直接每个私有接口加上用户名 密码的方式;
2、token方式 在用户登陆接口中验证用户登陆后返回用户token以后每次带上token 可是对于Android和Ios来说可以相对安全的存储起来 web怎么存储 存储在cookie中吗 可是这个token没有类似session的状态 也就是说我关闭浏览器没有退出 下次打开浏览器还是获取了token进行了请求 按道理说应该关闭浏览器也就删除了cookie中的token 也有网友说放在sessionStorage中 但是好像sessionStorage不能跨tab;
3、HTTP头方式 看到有的网文说 将用户名密码base64后放在HTTP头中,这样不是别人也能base64解密出来;
4、oath2方式 好复杂 现在还是蒙的 说要怎么授权跳转 感觉这是第三方登陆 不适合私有接口 不知道oath2怎么实现安全的私有接口;
5、使用HTTPS方式 需要申请证书收费呢

请教下群大神 如何用TP或TP5开发一个安全的私有API接口 共 三平台(pc web android ios)公用,也就是主要登陆和返回的校验 以及之后三平台要发送来的校验 这里的逻辑如何实现 谢谢

Thinkphp推广链接自动生成

转载:http://www.thinkphp.cn/topic/33723.html

 

tpshop商品属性表关系

TPshop 里面的商品属性, 首先看看TPshop商品详情中的属性介绍, 纯展示给用户看的。

再来tpshop看看商品列表帅选页面的属性,可以根据属性帅选不同的商品

再来看看tpshop后台属性管理如果把属性筛选关掉, 在商品列表帅选页面将不会再出来帅选项

再来看看TPshop后台商品属性设置, 各种属性选择输入,这些属性前提是需要先到 商品管理->商品属性->添加属性  里面提前添加好

下面看下TPshop 重属性表的结构设计

1 如上图可以看出tp_goods_type表的 id 为4 表示手机
2 tp_goods_attribute表的type_id对应的tp_goods_type表的id
3 tp_goods_attribute表68表示内存容量 69表示操作系统
4 tp_goods_attr 表的attr_id 对应 tp_goods_attribute 表的 attr_id
5 tp_goods_attr 表的 goods_id 为104表示小米手机它的 68 内存容量为 64G 它的 69操作系统为 android
6 tp_goods_attr 表的attr_val 有可能是tp_goods_attribute表的 attr_values选择出来的, 也有可能是手工录入,这个要看TPshop后台商品属性管理 性值的录入方式

 

TPshop的规格表设计原理机制

TPshop商品规格比较简单, 数据库设计清晰, 先看上图购买商品时对应的选择, 不同规格有着不同的价格和不同的库存。

TPshop商品规格比较简单, 数据库设计清晰, 先看上图购买商品时对应的选择, 不同规格有着不同的价格和不同的库存。

再看看后台对应的设置,手机例子
颜色:黑色 白色 金色
内存:32G 64G 128G
因为 黑色手机也有 32G 64G 128G , 然后白色手机也有32G 64G 128G 金色手机也有 32G 64G 128G 所以这里是有9种组合
9种价格 9种库存 9种条码 当拿到其中一个条码时就知道这个商品(手机)是什么规格是什么颜色什么内存等。。。。

下面来看看表结构设计

如上图可以看出
1. tp_goods_type 表的 id 4 表示手机,
2. tp_spec 表 type_id 里面的 4表是手机 id 16表示颜色 6表示内存
3. tp_spec_item表 spec_id 6表示内存 id 28表示 31G
4. tp_spec_item表 spec_id 16表示颜色 id 55表示 黑色
5. tp_spec_goods_price表的 key字段 28_55 表示32G 黑色 刚好对应 tp_spec_item表

如上图清晰可以理解, 如果不理解多看几遍完全可以简单理解。

以下是创建这四张表的sql 代码。 自己也可以在本地TPshop数据库查看一下

 

ThinkPHP3.2.3 微信扫码支付(模式二)

微信扫码支付(模式二)相关:https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=6_5

以下代码是thinkphp3.2接入微信实现扫码支付!

首先看下官方的视图:

大体流程如下:首先到lib目录下配置WxPay.Config.php

设置OK以后。

写的有点简单,如有疑问下面留言吧,你的留言我会第一时间收到邮件通知!及时回复!在此感谢黄顺同学的指点!

Thinkphp5.0 微信网页获取用户当前地理位置[亲测无BUG]

 

注明:有问题留言

 

Thinkphp3.2实现分页功能 方法一/方法二

通常在数据查询后都会对数据集进行分页操作,ThinkPHP也提供了分页类来对数据分页提供支持。 下面是数据分页的两种示例。

带入查询条件

如果是POST方式查询,如何确保分页之后能够保持原先的查询条件呢,我们可以给分页类传入参数,方法是给分页类的parameter属性赋值

分页样式定制

我们可以对输出的分页样式进行定制,分页类Page提供了一个setConfig方法来修改默认的一些设置。例如:

 

setConfig方法支持的属性包括: header:头部描述信息,默认值 “共 %TOTAL_ROW% 条记录” prev:上一页描述信息,默认值 “<<” next:下一页描述信息,默认值 “>>” first:第一页描述信息,默认值 “1…” last:最后一页描述信息,默认值 “…%TOTAL_PAGE%” theme :分页主题描述信息,包括了上面所有元素的组合 ,设置该属性可以改变分页的各个单元的显示位置,默认值是 “%FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END%”

其中,显示位置的对应的关系为:

位置 说明
%FIRST% 表示第一页的链接显示
%UP_PAGE% 表示上一页的链接显示
%LINK_PAGE% 表示分页的链接显示
%DOWN_PAGE% 表示下一页的链接显示
%END% 表示最后一页的链接显示

除了改变显示信息外,你还可以使用样式来定义分页的显示效果。 这些样式class包括:first(第一页)、prev(上一页)、next(下一页)、end(最后一页)、num(其他页的数字)、current(当前页)。

[url href=http://document.thinkphp.cn/manual_3_2.html#data_page]相关手册[/url]

ThinkPHP无限级分类查找子孙树代码分析

 

Thinkphp上传商品信息+自动过滤+自动填充+自动验证+上传图片+缩略图

根目录手动传建Upload

根目录手动传建Upload->thumb