分类归档

网站开发

FWQ
小程序
php开发微信支付获取用户地址方法代码
微信支付的收货地址共享功能,主要是统一的管理微信用户个人的收货地址,其收货地址可以被应用于所有可以调用的开发者。用户的收货地址包含了很多个人信息,因此该接口必须要通过申请,申请的方式可以在mp平台上查看到。 使用微信获取地址信息是和微信支付一道申请的,微信支付申请通过,就可以使用该功能。 微信商城中,使用微信支付获取用户的收货地址,可以省略用户输入地址信息的繁复流程,提高用户体验。 但是可能是因为牵扯到用户隐私,所以在使用过程中,需要用户自己主动选择使用该功能,并且是通过点击的操作,我们才可以获取到用户的收货地址,这一点是要注意的。 操作流程如下: 立即学习“”; 1.用户打开购物车页面,点击结算,跳转到一个微信的oauth2的页面,地址为:https://open.weixin.qq.com/connect/oauth2/authorize 2.oauth2页面将链接redirect到结算页面,使用PHP获取到链接中的code参数,经过处理获取到accessToken值。生成签名,组装成参数传递到页面。 3.结算页面使用用户点击,结合2中生成的数组参数完成获取地址的功能。这里可以有一个将获取到的地址使用ajax记录到数据库的功能,那么客户下次购物的时候,就不用麻烦了。 详细的讲下需要注意的几点: 1.跳转到微信oauth2的这个步骤,在用户看来是没有多少差别的,但是在程序这里就有很多的事情要做。首先是oauth2页面的参数,其中appid为微信appid,redirect_uri为urlencode后的订单结算页面的地址,response_type为固定的code,scope为固定的sns_base,state在这个地方可随意填写,还有一个#wechat_redirect,那么该链接的最终样子为: https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=订单结算地址&response_type=code&scope=snsapi_base&state=随意填写#wechat_redirect 2.用户访问到该地址,被重新定位到追加了code参数订单结算地址,在此页面需要由程序获取到accessToken,注意该accessToken为获取用户信息的accessToken跟另外一个和微信交互的access token不是同一个。 使用GET请求就可以获取该accessToken,可以使用curl或者是file_get_contents。请求地址为: https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=APP_SECRET&code=CODE&grant_type=authorization_code; 这里有一点需要注意,有时候微信会抽风,会连续多次请求订单结算页面,造成accessToken失效,需特殊处理。 这里的签名生成和微信支付里面的签名不一样,这里的要简单很多,只是加密一个,格式为:accesstoken=ACCESSTOKEN&appid=APPID&noncestr=32位随机字符串&timestamp=&url=当前页面的URL,然后对该字符串进行加密。 在前端页面中需要使用一连串的参数来实现获取地址的功能,分别是appID,scope(默认为jsapi_address),signType(默认为sha1),addrSign(上面sha1加密后的字符串),timeStamp(同上文的时间戳),nonceStr(同上文的随机字符串)。 3.在前端页面,使用下面的js来完成获取用户地址的操作: function get_addr() {   WeixinJSBridge.invoke('editAddress',{   "appId" : "<?php echo $sign['appId']?>",   "scope" : "jsapi_address",   "signType" : "sha1",…
2024-11-25 阅读全文 →
FWQ
CMS教程
修改织梦dedecms默认标题长度
在用dede调用列表标题出来的时候,会发现标题文字字数显示不完全,那是因为dede默认标题出来长度是30个字符,为了让标题显示完整,要做以下修改!                            (推荐学习:) 1、进入后台–系统–系统设置–系统基本参数–其他选项–文档标题最大程度改为你要的长度原默认是60(这里改为了200) 2、登陆数据库,改数据库表dede_archives表里面的title字段,原默认是60,(这里改为200). ALTER TABLE `dede_archives` CHANGE `title` `title` VARCHAR( 200 ) 登录后复制 解决dedecms UTF-8首页文章标题显示字数太短的办法 原因分析:因为UTF-8编码1个中文汉字占用的是3个字节,GBK占用的是2个字节,所以,原先$titlelen = AttDef($titlelen,30)等于对大取30个字节,所以最多只显示11个汉字。  解决方法: 进入dedecms的后台,在“模板管理”中的“标签源码管理”,找到arclist.lib.php ,点击“编辑”,找到“$titlelen =…
2024-11-25 阅读全文 →
FWQ
小程序
小程序集成环信IM怎么用?(附代码实例)
小程序集成环信IM 最近在做一款有语音直播功能的小程序,用到了环信im集成功能,由于我搜了下目前用环信做小程序的的确是少之又少,而且环信官方说从2月份不再更新代码(具体原因我也没问,可能本身微信就是一款聊天工具所以用处不大) 我们产品需要用到聊天室功能,之前做H5端登录完成之后加入聊天室即可: WebIM.conn.open(options); WebIM.conn.joinChatRoom(option1); 登录后复制 同样方法在小程序上不行,一直报错: Cannot read property 'sendIQ' of undefined 登录后复制 百度了一下,说加入聊天室要放在登录成功后的回调里,于是查看它的源码connection.js发现: connection.prototype.open = function (options) { var pass = _validCheck(options, this); if (!pass) {…
2024-11-25 阅读全文 →
FWQ
小程序
如何解决微信小程序搭建及解决登录失败的问题
这篇文章主要介绍了微信小程序搭建及解决登录失败问题的相关资料,需要的朋友可以参考下 等了好久的小程序,终于在近日曝光了。现在就带大家来尝尝鲜。以下是一张随便看看的图。 一、构建微信小程序的步骤 下载开发工具考虑到微信0.9.092100的Web开发者工具对于登录做了限制,所以下载登录还是需要一点门路的,我在下面有介绍,希望大家耐心的往下面看~下载工具的地址:链接 密码: r3hc。 破解的步骤就是:将破解压缩包的两个文件,放到如下图路径: 这个是MAC路径: 应用程序->微信web开发者工具->显示包内容/Resources/app.nw/app/dist/components/create/createstep.js/Resources/app.nw/app/dist/stores/projectStores.js Win目录: E:微信web开发者工具package.nwppdiststroesprojectStores.jsE:微信web开发者工具package.nwppdistweappppservicesdebug.js 如下图: 2.下载Demo,文档 下载地址:地址密码: 587y 3.导入Demo 打开微信Web开发工具,扫码登录,大家会出现一个问题。如图: 登录失败,错误信息:Please bind your wechat account to the appid first 解决办法:下载旧版本的安装包,登录后,在打开新版本的开发工具即可。旧的指的是0.7,新版本指的是0.9,旧版本地址:旧版本,密码: zasb…
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序商城开发之动态API实现特卖商品的流式布局代码
本篇文章给大家带来的内容是关于微信小程序商城开发之动态API实现特卖商品的流式布局代码 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 看效果 开发计划 1、新品特卖商品列表布局2、调用动态api获取数据并加载3、点击商品跳转商品详情 根据商品ID获取商品详情API数据模型 访问:https://100boot.cn/ 选择微商城案例,如下图所示: 下方还有详细的数据模型可以查看哦! brand.wxml <scroll-view>   <view>     <view>       <view>       <view>         <image></image>       </view>             <view>               {{item.name}}            </view>             <view>               <p>¥{{item.price}}</p>                 <p>¥{{item.privilegePrice}}</p>                 <p>{{item.discount}}折</p>                </view>       </view>     </view>     <view>       <view>       <view>…
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序开发之登录流程制作说明
做过微信登录的都知道,我们需要一个标识来记录用户的身份的唯一性,在微信中unionid就是我们所需要的记录唯一id,那么如何拿到unionid就成了关键,将项目分为小程序和 后台php代码两部分来讲。 先从我们的小程序代码开始 简单的说一下我们小程序的代码登录流程 login ->获取code ->getUserInfo获取iv和encryptedData ->传给自己的服务器处理 ->返回给小程序结果 var API_URL = "自己的服务器地址"; Page({  onLoad: function () {  console.log("iv");  wx.login({//login流程  success: function (res) {//登录成功  if (res.code) {  var code = res.code;  wx.getUserInfo({//getUserInfo流程  success: function (res2) {//获取userinfo成功  console.log(res2);  var encryptedData = encodeURIComponent(res2.encryptedData);//一定要把加密串转成URI编码   var iv = res2.iv;   //请求自己的服务器   Login(code,encryptedData,iv);  }  })    } else {…
2024-11-25 阅读全文 →
FWQ
小程序
解密与思考Rax 小程序运行时方案
栏目介绍Rax 小程序运行时的方案。 2020 年 3 月,暨支持编译时方案之后,rax 小程序发布了支持运行时方案的版本。截至目前,rax 仍是业界唯一一个同时支持编译时和运行时方案的小程序开发框架。本文将向大家介绍 rax 小程序运行时方案的原理以及我们的思考。 回顾编译时方案 介绍运行时方案之前,我们再回顾下什么是编译时方案。顾名思义,编译时方案侧重于编译,这其中的代表框架是 Taro v2.x。其通过静态编译的方式,将 JSX 转换为小程序的模板语言(即 WXML/AXML 等),再辅以轻量级的运行时 JS 代码,抹平小程序生命周期和 React 生命周期的差异,使用户能够以熟悉的 React DSL 进行小程序开发。Rax 的编译时方案原理与 Taro v2.x…
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序开发中怎样实现电商购物车逻辑
给大家分享一个关于小程序购物车全选的逻辑处理,这个还是要感谢我的老妹教导我,一个开发人员做东西一定要严谨,不管UI设计的有多丑,该有的逻辑你一定要做到。 首先我们要做到的就是,当用户点击第三个商品时 全选按钮自动选中,或者全选之后,只要有一个商品不选中,全选按钮也得变动。先给大家看一下代码: 你要在页面onload时候定义一些你需要每次渲染的数据 data: { likeList: [], carts:[], // 购物车列表 hasList:false, // 列表是否有数据 //totalPrice:0, // 总价,初始为0 selectAllStatus:false, // 全选状态,默认全选, goodsNums:0, allclick:[] } 每件商品单个选中的的逻辑处理 selectList(e) {   const index = e.currentTarget.dataset.index;// 获取每一个点击的购物车ID  let carts = this.data.carts,   selected = carts[index].select,   all = this.data.allclick;   carts[index].select = !selected; carts[index].select == true ? all.push(index):all.splice(index,1); all.length == carts.length ? this.setData({   selectAllStatus: true}):this.setData({   selectAllStatus: false});   this.getTotalPrice(); }, 登录后复制 登录后复制…
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序的定位在变化
  1 年前的微信公开课,张小龙提出要做应用号,经过 8 个月的研发,小程序(应用号)开始内测。如果你有观察从内测至今微信小程序提供的 api、后台功能等的变化,你会发现,似乎过去 2 个月微信团队做的事比之前 8 个月还要多。微信团队有 1000 多人,参与小程序项目的人也至少有二三十人,如果这是一个创业公司的项目,显然一年的开发周期太长了。况且,微信团队已经有数年做公众平台的经验,这样一个平台,如果纯开发,可能一两个月就能完成。是什么原因导致 1 年后才发布当初被外界期待万分的应用号?我的理解是,微信团队也在推演小程序的定位,在过去一年,尤其是内测前的 8 个月,他们可能推翻了多个版本。  1.1 给服务号接棒的小程序  虽然服务号上诞生了招商银行、朝夕日历、助理来也、Yoli 口语等优秀的服务号,但不可否认的是,服务号生态远远没有订阅号的繁荣。  我们能轻松查到,像一条、二更、新世相等公司,通过运营订阅号,获得了丰厚的融资,订阅号领域也出现了很多周边服务,比如 WeMedia,这家为订阅号提供服务的公司已经在新三板上市;比如新榜,这家公司汇聚了非常多的订阅号数据。  前面提到的 3 个订阅号,他们初期只做了订阅号,获得了投资,但你几乎没有听到多少公司是「只」做了服务号,然后做得不错而获得投资。  虽然我们不能只从一小部分产品获得融资的情况去判断某个平台是否足够繁华,但毋庸置疑的是,整个订阅号生态被曝光、被投资的总量相对服务号多了几个数量级。  如果订阅号是微信无心插柳缔造了一个新的创业生态,那么服务号显然是微信想仿照订阅号的路线,把内容之外的东西,也连接到微信,这些内容之外的东西,就是服务。  可惜的是,服务号发展得远远没有订阅号好,但微信从战略层面上,是希望连接一切的,如果服务号没有很好地解决「微信连接一切」的目的,是否应该有新的产品来完成这个使命?  我相信,这是小程序(应用号)诞生的背景之一,它要接棒服务号,连接更多服务和场景。  1.2连接新场景的小程序   利用小程序提供的框架和 API,开发出来的程序体验是优于 HTML5 的,于是在 9 月底刚开始内测时,业界就出现了很多争论,包括小程序会不会替代…
2024-11-25 阅读全文 →
FWQ
小程序
小程序与微信公众号如何对接
小程序与微信公众号对接的方法:1、公众号可以把自己关联的小程序放在自定义菜单中,用户点击可以直接跳到小程序;2、公众号模版消息可打开相关小程序,众号运营者可以推送关联的小程序页面。 【相关学习推荐:】 小程序与微信公众号对接的方法: 1、公众号可以把自己关联的小程序放在自定义菜单中,用户点击可以直接跳到小程序。 2、公众号模版消息可打开相关小程序。通过公众号,公众号运营者可以推送关联的小程序页面了。 3、公众号绑定相关小程序时,可选择给粉丝下发通知。公众号运营者可以通知粉丝,“我绑定了这个小程序”,粉丝点击消息就可以打开小程序。(此消息不占用原有群发条数) 还有一种是让别人的公众号可以跳转到你的小程序,但要让对方的公众号关联你的小程序才行。 相关学习推荐: 以上就是小程序与微信公众号如何对接的详细内容,更多请关注米云其它相关文章!
2024-11-25 阅读全文 →