php二维码分享到朋友圈,php实现的微信分享到朋友圈并记录分享次数功能

php二维码分享到朋友圈,php实现的微信分享到朋友圈并记录分享次数功能本文实例讲述了php实现的微信分享到朋友圈并记录分享次数功能。分享给大家供大家参考,具体如下:1.引入JS文件2.通过config接口注入权限验证配置3.通过ready接口处理成功验证4.通过error接口处理失败验证JSDK档说明:https://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html(1)(2)页面加入获取we…

大家好,又见面了,我是你们的朋友全栈君。

本文实例讲述了php实现的微信分享到朋友圈并记录分享次数功能。分享给大家供大家参考,具体如下:

1.引入JS文件

2.通过config接口注入权限验证配置

3.通过ready接口处理成功验证

4.通过error接口处理失败验证

JSDK档说明:https://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html

(1)

(2)页面加入获取webconfig验证信息的值

$url=dirname(dirname(dirname(dirname(dirname(dirname(dirname(__FILE__)))))));

$url=$url.’/addons/lb_vote/jssdk.php’;

include $url;

$jsdk=new JSSDK(‘wxa3816b432f7291ba’,’e469db86bec9661650362dc2f9df8956′);

$signPackage = $jsdk->GetSignPackage();

?>

(3)验证config

wx.config({

debug: false,

appId:'<?php echo $signPackage[“appId”];?>’, // 必填,公众号的唯一标识

timestamp:<?php echo $signPackage[“timestamp”];?>, // 必填,生成签名的时间戳

nonceStr: ‘<?php echo $signPackage[“nonceStr”];?>’, // 必填,生成签名的随机串

signature:'<?php echo $signPackage[“signature”];?>’,// 必填,签名,见附录1

jsApiList: [‘checkJsApi’,’onMenuShareTimeline’] //

});

(4)微信分享到朋友圈接口

wx.ready(function(){

wx.onMenuShareTimeline({

title: ‘测试分享朋友圈功能’, // 分享标题

link: “{php echo ‘http://’.$_SERVER[‘HTTP_HOST’].$_SERVER[‘REQUEST_URI’];}”, // 分享链接

imgUrl: ‘{php echo $_W[‘siteroot’];}{$photo}’, // 分享图标

success: function () {

// 用户确认分享后执行的回调函数 记录分享的次数

$.ajax({

url:”{php echo $this->createMobileUrl(‘Index’,array(‘op’=>’share’))}”,

type:’post’,

data:”id=”+{$userinfo[‘id’]}+”&rid=”+{$userinfo[‘rid’]},

dataType:’json’,

success:function(data){

if(data.flags==1){

alert(data.msg);

}else if(data.flags==2){

alert(data.msg);

location.href=”{php echo $this->createMobileUrl(‘Index’,array(‘op’=>’display’,’id’=>$id))}” rel=”external nofollow” ;

}

}

});

},

cancel: function () {

// 用户取消分享后执行的回调函数

alert(‘取消分享成功!’);

}

});

});

(5)验证错误时执行的函数

wx.error(function(res){

alert(res);

});

(6)PHP端更新数据库,记录分享次数 返回处理信息给用户

if($op==’share’){

$voteinfo=pdo_fetch(“SELECT *FROM “.tablename(‘lb_vote_info’).” WHERE rid = :rid and id=:id and uniacid=:uniacid and pass=:pass”, array(‘:rid’ => $_GPC[‘rid’],’:uniacid’=>$_W[‘uniacid’],’:pass’=>1,’id’=>$_GPC[‘id’]));

$sharenum=intval($voteinfo[‘sharenum’])+1;

$data=array(

‘sharenum’=>$sharenum,

);

$res=pdo_update(‘lb_vote_info’, $data, array(‘id’ =>$_GPC[‘id’],’uniacid’=>$_W[‘uniacid’],’rid’=>$_GPC[‘rid’]));

if(!empty($res)){

$msg[‘msg’]=’已分享到朋友圈!’;

$msg[‘flags’]=2;

echo json_encode($msg);

}else{

$msg[‘msg’]=’分享失败!’;

$msg[‘flags’]=1;

echo json_encode($msg);

}

}

希望本文所述对大家PHP程序设计有所帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/134709.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • AV1,实时编码READY

    AV1,实时编码READY点击上方“LiveVideoStack”关注我们一款编码器的成功,不仅需要大量的金钱,还需要耐心。AV1定稿三年后,是时候为它庆祝了。文|包研不知不觉,距离AV1完成定稿已经过去了三年…

    2022年9月13日
    0
  • LinkedList和ArrayList的区别[通俗易懂]

    LinkedeList和ArrayList都实现了List接口,但是它们的工作原理却不一样。它们之间最主要的区别在于ArrayList是可改变大小的数组,而LinkedList是双向链接串列(doubly LinkedList)。ArrayList更受欢迎,很多场景下ArrayList比LinkedList更为适用。这篇文章中我们将会看看LinkedeList和ArrayList的不同,而且我们试

    2022年3月10日
    46
  • vue 关闭vue项目中烦死人的ESlint[通俗易懂]

    vue 关闭vue项目中烦死人的ESlint[通俗易懂]【已解决】vue关闭vue项目中烦死人的ESlint很多时候,因为一些书写问题,ESlint会报错。

    2022年6月12日
    36
  • top命令输出解释以及load average 详解及排查思路

    top命令输出解释以及load average 详解及排查思路昨天nagios报警warning,没来得及留下报警截图,nagios值设定的值是当1分钟多于15个进程等待,5分钟多于10个,15分钟多于5个则为warning状态当1分钟多于30个进程等待,5分钟多于25个,15分钟多于20个则为critical状态————————————————————-

    2022年7月17日
    12
  • 树莓派I2C通过Shell操作FDC2214[通俗易懂]

    树莓派I2C通过Shell操作FDC2214[通俗易懂]陈拓chentuo@ms.xab.ac.cn2020/07/21-2020/07/29FDC2214是Ti公司的一款低功耗高精度的电容传感器芯片。本文讲述用树莓派LinuxShell配置和操作FDC2214,可以快速熟悉并进行原型开发。1.树莓派换源为了加快所需软件的下载,我们需要先换源。首先查看系统版本:lsb_release-a修改软件更新源/etc/apt/sources.listsudonano/etc/apt/sources.list在下面的语.

    2022年5月26日
    44
  • ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)

    一、什么是ActiveMQ度娘给出的定义:ActiveMQ的官网打出的标语(如上图):大意是:兼容性好并且功能强大的开源多协议消息中间件,那具体是怎么体现的呢?1.兼容性好:ActiveMQ可以

    2022年2月16日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号