private function sendxsbilldd_msg(){$data = array();$msg = Db::table('wxxsbilldd_msg')->where('issend', '0')->limit(1)->select();if ($msg == null) {dump("订单无数据发送失败");return;}$outindex = 0;$guid_xsbill = $msg[$outindex]['guid_xsbill'];$data_m = Db::table('wxxsbilldd_m')->where('aguid', $guid_xsbill)->select();$data_d = Db::table('wxxsbilldd_d')->where('guid_m', $guid_xsbill)->select();$items_d = count($data_d); //项数if($data_m ==null){//更新 issend 状态Db::startTrans();try {Db::table('wxxsbilldd_msg')->where('aguid', $msg[$outindex]['aguid'])->update(['issend' => '1']);Db::commit();dump("订单更新完成");} catch (Exception $e) {Db::rockback();}dump($msg[$outindex]['guid_xsbill']);return ;}$items = (int)$data_m[0]['items'];if ( $items !== $items_d){dump("订单数据未同步完成 ".$items.'  '.$items_d.' '.$data_m[0]['aguid'] );return ;}$acode = $data_m[0]['prdacode']; //生产订单号$day_yw = $data_m[0]['date_yw']; //时间$khaname_long = $data_m[0]['khaname_long']; //客户名称$sy = round($data_m[0]['sy'], 2);    //总金额$qty = round($data_m[0]['qty'], 2);  //数量$aguid = '/' . $data_m[0]['aguid'];     //参数ID$weburl = $this->url . $aguid; //web网页链接$this->pagepath = $aguid;  //小程序使用//模板消息拼接$touser = $msg[$outindex]['openid'];$data = ["touser" => $touser,"template_id" => $this->template_id,"url" => $weburl,"data" => array("first" => array("value" => $this->companyname,"color" => $this->color),"keyword1" => array("value" => $khaname_long,"color" => $this->color),"keyword2" => array("value" => $acode,"color" => $this->color),"keyword3" => array("value" => $items_d,"color" => $this->color),"keyword4" => array("value" => $qty,"color" => $this->color),"keyword5" => array("value" => $sy.'元',"color" => $this->color),"remark" => array("value" => $day_yw,"color" => $this->color),)];//模板消息发送$access_token = $this->getWxAccessToken();$msgurl = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=". $access_token; // 发送模板消息接口$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $msgurl);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);// 我们在POST数据哦!curl_setopt($ch, CURLOPT_POST, 1);// 把post的变量加上$json_template = json_encode($data);curl_setopt($ch, CURLOPT_POSTFIELDS, urldecode($json_template));curl_exec($ch);curl_close($ch);//更新 issend 状态Db::startTrans();try {Db::table('wxxsbilldd_msg')->where('aguid', $msg[$outindex]['aguid'])->update(['issend' => '1']);Db::commit();dump("订单更新完成");} catch (Exception $e) {Db::rockback();}}

php 实现公众号模板消息url 跳转相关推荐

  1. 基于tp5 微信公众号模板消息

    首先引入微信sdk,然后配置appid,appsecret,然后实例化类 发送模板消息前期准备 先通过appid appsecret获取code ,然后通过code获取access_token 通过a ...

  2. asp群发微信公众号模板消息代码asp写的

    asp群发微信公众号模板消息代码asp写的,主要用于对已经入库的会员群发模板消息 <% '=群发模板信息=转载请保留作者信息:18611436777======== If Request(&qu ...

  3. 微信公众号 - Java推送公众号模板消息给用户

    不啰嗦,我们直接开始! 由于没有公众帐号,本文使用微信公众平台接口测试帐号进行调试. 一.申请测试帐号 1.使用微信扫码登录下面网址 微信公众平台 (qq.com) 2.找到appID和appsecr ...

  4. 小程序订阅消息和公众号模板消息

    通过小程序和公众号关联后发公众号模板消息 关联后用户登录获取到union_id,主体在小程序,根据对应场景发送模板消息 代码如下: /*** 模板消息 发送* @param $openid 接收消息的 ...

  5. 公众号获取用户手机号_微信公众号模板消息软件怎么指定用户发送?

    使用公众平台模板消息功能,仅支持添加模板和更改所在行业,如果想要实现更多功能效果,可以通过微号帮平台的模板消息群发功能实现,也可以自己根据公众平台的开发接口编程实现功能,均能实现微信公众号模板消息指定 ...

  6. 公众平台模板消息所在行业_微信公众号模板消息功能怎么快速推送?

    公众号平台上模板消息功能仅支持添加模板和更改所在行业,不支持模板消息推送,如果想要实现更多功能效果,可以使用微号帮平台的模板消息群发功能实现,也可以通过公众号平台的接口自己开发实现功能,均可以达到微信 ...

  7. 公众平台模板消息所在行业_第三方工具微信公众号模板消息群发如何操作?

    当下,公众平台模板消息功能仅支持添加模板,修改所在行业,如果想要群发模板消息,可以自己根据公众平台的接口编程实现,也可通过微号帮平台的模板消息群发功能实现,均可以让微信公众号群发模板消息,模板消息即按 ...

  8. C#开发微信门户及应用(27)-公众号模板消息管理

    原文:C#开发微信门户及应用(27)-公众号模板消息管理 通过模板消息接口,公众号能向关注其账号的用户发送预设模板的消息.模板消息仅用于公众号向用户发送重要的服务通知,只能用于符合其要求的服务场景中, ...

  9. 微信公众号模板消息管理

    通过模板消息接口,公众号能向关注其账号的用户发送预设模板的消息.模板消息仅用于公众号向用户发送重要的服务通知,只能用于符合其要求的服务场景中,如信用卡刷卡通知,商品购买成功通知等.不支持广告等营销类消 ...

  10. 微信公众号-模板消息管理

    微信公众号-模板消息管理 通过模板消息接口,公众号能向关注其账号的用户发送预设模板的消息.模板消息仅用于公众号向用户发送重要的服务通知,只能用于符合其要求的服务场景中,如信用卡刷卡通知,商品购买成功通 ...

最新文章

  1. 计算机视觉还能撑多久?
  2. linux /etc/profile和/etc/bashrc
  3. 【赠书】新手速递!深度学习视频理解!
  4. linux下创建文件没有权限,分享一个Linux无法创建文件夹,但是目录权限却显示正常的问题和解决...
  5. 2021CCPC河北省省赛F题(河南省CCPC测试赛重现)
  6. 还不知道这 11 个超酷的编程新工具你就 out 了!
  7. 《三毛。。。。》烂漫
  8. IE8 -- 此网页上的问题导致 Internet explore 关闭并重新打开该选项卡
  9. autofs rhel7
  10. windows工具:推荐一款可以截长图(滚动截图)的工具FSCapture
  11. codeblock 设置背景颜色
  12. 微信公众号(服务号)授权登录
  13. Java SSM 项目实战 day08 方法级别的权限操作 服务器端的权限控制(JSR-250注解)(支持表达式的注解)(@Secured)以及页面端的权限控制
  14. 【阅读源码系列】ThreadPoolExecutor源码
  15. 简单几个操作小技巧提高你的生产力!☀️我好了,你呢☀️
  16. python画布删除图形_Matplotlib在savefig之后从画布中清除旧图形
  17. numpy之arange函数
  18. 路由器实现Vlan间通信
  19. IBTrACS Technical Documentation
  20. 机器学习算法(二十五):KD树详解及KD树最近邻算法

热门文章

  1. 在TMS320F28XXX DSP上实现从flash拷贝整个程序到ram运行的方法探讨
  2. arcgis10.2之Maplex(高级标注扩展模块)
  3. java转盘抽奖算法_抽奖算法 - 幸运大转盘 - java
  4. 教务系统选课(抢课)技巧
  5. 詹克团反攻比特大陆:一场失去人心的自我挽留
  6. 测试ssd软件哪个好,好物分享:安兔兔SSD测试工具
  7. python中tab键_python中tab键指的是什么意思
  8. ccy影响因子版270ms
  9. 苹果开启了颠覆wintel的序幕,谷歌和ARM做好准备了么?
  10. 关于win7系统重装完鼠标不能用的解决办法