小程序已经可以用来做商家的业务,实现模板消息的发送就很有必要了,可以通知用户一些消息;
类似于这种的:
文章图片
首先是小程序端:
首先是表单提交获取formid;
wxml文件代码:
js文件代码:
submitForm:function(e){
var name = e.detail.value.data_name;
var formid = e.detail.formid;
//开发工具里调试的时候显示的是the formId is a mock one,要到真机才能看到formid的值
var tarPage = "/haa/muban";
//点击消息跳转的界面
wx.request({
url: 'http://localhost/test/temMsg.php',//服务器地址
data:{
formid:formid,
name:name,
openid:wx.getStorageSync("openid"),//要获取用户的openid才能发送,如果还不会建议看上篇;
},
header:{
"Content-type":"application/json",
},
success:function(res){
console.log(res.data);
},
fail:function(err){
console.log(err);
}
})
}
后台php代码:
$openid,
"template_id"=>$temid,
"page"=>$page,
"form_id"=>$formid,
"data"=>array(
"keyword1"=>array(
"value"=>$key1,
"color"=>"#173177"
),
"keyword2"=>array(
"value"=>$key2,
"color"=>"#173177"
),
"keyword3"=>array(
"value"=>$key3,
"color"=>"#173177"
),
"keyword4"=>array(
"value"=>$key4,
"color"=>"#173177"
),
"keyword5"=>array(
"value"=>$key5,
"color"=>"#173177"
),
"keyword6"=>array(
"value"=>$key6,
"color"=>"#173177"
)
),
"emphasis_keyword"=>"keyword1.DATA",//需要进行加大的消息
);
$res = postCurl($url,$data,'json');
//将data数组转换为json数据
if($res){
echo json_encode(array('state'=>4,'msg'=>$res));
}else{
echo json_encode(array('state'=>5,'msg'=>$res));
}}function returnAsskey()
{
$url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=yourAppid&secret=yourSecert';
$ass_key = curl_get($url);
$a1 = $ass_key->access_token;
return $a1;
}
?>
postCurl.php文件代码:
getCurl.php文件代码:
如果在开发工具上进行调试会出现41028的错误,是因为获取不到formid,可以到手机端调试然后在console里面看到formid添到开发平台上面就可以了
还有就是access_token的时间期限是7200s,到期就要更换,我是直接将时间和access_token,然后每次判断一下当前时间和数据库中存取的时间是否差7200s,到了就更换,感觉这方法很蠢,才刚学php也不会很多,欢迎交流。
最后成功得到通知:
文章图片
【解决小程序发送模板消息(php后台)】看了好多博客才弄出来,略有成就感
推荐阅读
- 小程序|【视频倒放神器】超级玩法(千万不要倒放视频,太魔性了根本停不下来......)
- 小程序|最难忘的新年祝福,第一个让大家都惊喜的小程序(有趣、恶搞、好玩)
- 小程序|【自制壁纸生成器】2022新年壁纸领取,换一张手机壁纸,迎接2022叭~
- 白皮书|阿拉丁指数丨《2021 年度小程序互联网发展白皮书》4.5 亿+DAU 小程序的 6 大发展趋势
- 学习笔记|uni-app开发小程序
- 微信小程序的广告方式有哪些
- 公众号关联微信小程序功能介绍
- 微信小程序|微信小程序从入门到入土教程(02)
- 小程序|小程序性能优化的一些实践