E企盈营销工具技术服务商 热线:4006-838-530

模板消息,解决小程序发送模板消息php后台

E企盈直播平台营销卖货系统

小程序已经可以用来做商家的业务,实现模板消息的发送就很有必要了,可以通知用户一些消息;类似于这种的:首先是小程序端:首先是表单提交获取formid;wxml文件代码:formbindsubmit=”submitForm”report-submit//一定要有report-submit,不然获取不到formidviewtext姓名:/textinputtype=”text”placeholder=”请输入姓名”name=”data_name”maxlength=”20″value=””auto-focus//viewbuttonform-type=”submit”确认参加/button/formjs文件代码:submitForm:function(e){varname=e.detail.value.data_name;varformid=e.detail.formid;//开发工具里调试的时候显示的是theformIdisamockone,要到真机才能看到formid的值vartarPage=”/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代码:?phpinclude’getcurl.php’;//封装了发送get请求的phpinclude’postCurl.php’;//封装了发送post请求的phptemMsg();functiontemMsg(){$name=$_GET[‘name’];$formid=$_GET[‘formid’];$temid=’nDN7NDX5BB_Dd9PcM7SDlNWGQdPDTIfEf7kloG10E2Q’;$page=’/haa/muban’;$openid=$_GET[‘openid’];if(!$openid||!$formid)die(‘failed!’);$key1=’111111′;//发送的消息$key2=$name;$key3=’3月28日12:00-3月30日12:00′;$key4=’联系电话:134135415′;$key5=’猫萌萌抱枕’;$key6=’xxx’;$access_token=returnAssKey();$url=’https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=’.$access_token;$data=array(//这里一定要按照微信给的格式”touser”=$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){echojson_encode(array(‘state’=4,’msg’=$res));}else{echojson_encode(array(‘state’=5,’msg’=$res));}}functionreturnAsskey(){$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文件代码:?phpfunctionpostCurl($url,$data,$type){if($type==’json’){$data=json_encode($data);//对数组进行json编码$header=array(“Content-type:application/json;charset=UTF-8″,”Accept:application/json”,”Cache-Control:no-cache”,”Pragma:no-cache”);}$curl=curl_init();curl_setopt($curl,CURLOPT_URL,$url);curl_setopt($curl,CURLOPT_POST,1);curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,false);curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,false);if(!empty($data)){curl_setopt($curl,CURLOPT_POSTFIELDS,$data);}curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);curl_setopt($curl,CURLOPT_HTTPHEADER,$header);$res=curl_exec($curl);if(curl_errno($curl)){echo’Error+’.curl_error($curl);}curl_close($curl);return$res;}?getCurl.php文件代码:?phpfunctioncurl_get($url){$curl=curl_init();curl_setopt($curl,CURLOPT_URL,$url);curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,false);curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);$data=curl_exec($curl);$err=curl_error($curl);curl_close($curl);returnjson_decode($data);//对数据进行json解码}?如果在开发工具上进行调试会出现41028的错误,是因为获取不到formid,可以到手机端调试然后在console里面看到formid添到开发平台上面就可以了还有就是access_token的时间期限是7200s,到期就要更换,我是直接将时间和access_token,然后每次判断一下当前时间和数据库中存取的时间是否差7200s,到了就更换,感觉这方法很蠢,才刚学php也不会很多,欢迎交流。最后成功得到通知:看了好多博客才弄出来,略有成就感

赞(0) 打赏
未经允许不得转载:E企盈小程序开发-热线:4006-838-530 » 模板消息,解决小程序发送模板消息php后台
分享到: 更多 (0)
E企盈小程序直播营销卖货系统
E企盈直播平台营销卖货系统

评论 抢沙发

E企盈小程序开发

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏