Erläuterung des WeChat-Sharings für Moments und Erfassung der Anzahl der in PHP implementierten Sharing-Funktionen

jacklove
Freigeben: 2023-04-02 10:02:02
Original
2067 Leute haben es durchsucht

Dieser Artikel stellt hauptsächlich die Funktion zum Teilen von WeChat für Momente vor und zeichnet die Anzahl der in PHP implementierten Freigaben auf. Er analysiert die spezifischen Betriebsfähigkeiten der PHP-WeChat-Freigabefunktionsschnittstelle und zeigt anhand von Beispielen Freunde in Not an kann darauf verweisen

Das Beispiel in diesem Artikel beschreibt die in PHP implementierte Funktion zum Teilen von WeChat für Moments und zum Aufzeichnen der Anzahl der Freigaben. Teilen Sie es als Referenz mit allen:

1. Führen Sie die Konfiguration der Berechtigung über die Konfigurationsschnittstelle ein.
3. Führen Sie die erfolgreiche Überprüfung durch
4. Überprüfung der Fehlerschnittstellenverarbeitung fehlgeschlagen

JSDK-Dateibeschreibung:

https://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html

(1)

<script type="text/javascript" src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
Nach dem Login kopieren

(2) Fügen Sie der Seite den Wert des Erhaltens von Webconfig-Überprüfungsinformationen hinzu

<?php
$url=dirname(dirname(dirname(dirname(dirname(dirname(dirname(__FILE__)))))));
$url=$url.&#39;/addons/lb_vote/jssdk.php&#39;;
include $url;
$jsdk=new JSSDK(&#39;wxa3816b432f7291ba&#39;,&#39;e469db86bec9661650362dc2f9df8956&#39;);
 $signPackage = $jsdk->GetSignPackage();
?>
Nach dem Login kopieren

(3 ) Konfiguration überprüfen

wx.config({
debug: false,
appId:&#39;<?php echo $signPackage["appId"];?>&#39;, // 必填,公众号的唯一标识
timestamp:<?php echo $signPackage["timestamp"];?>, // 必填,生成签名的时间戳
nonceStr: &#39;<?php echo $signPackage["nonceStr"];?>&#39;, // 必填,生成签名的随机串
signature:&#39;<?php echo $signPackage["signature"];?>&#39;,// 必填,签名,见附录1
jsApiList: [&#39;checkJsApi&#39;,&#39;onMenuShareTimeline&#39;] //
});
Nach dem Login kopieren

(4) WeChat-Share-to-Moments-Schnittstelle

wx.ready(function(){
   wx.onMenuShareTimeline({
  title: &#39;测试分享朋友圈功能&#39;, // 分享标题
  link: "{php echo &#39;http://&#39;.$_SERVER[&#39;HTTP_HOST&#39;].$_SERVER[&#39;REQUEST_URI&#39;];}", // 分享链接
  imgUrl: &#39;{php echo $_W[&#39;siteroot&#39;];}{$photo}&#39;, // 分享图标
  success: function () {
    // 用户确认分享后执行的回调函数 记录分享的次数
   $.ajax({
      url:"{php echo $this->createMobileUrl(&#39;Index&#39;,array(&#39;op&#39;=>&#39;share&#39;))}",
      type:&#39;post&#39;,
      data:"id="+{$userinfo[&#39;id&#39;]}+"&rid="+{$userinfo[&#39;rid&#39;]},
      dataType:&#39;json&#39;,
      success:function(data){
       if(data.flags==1){
        alert(data.msg);
       }else if(data.flags==2){
        alert(data.msg);
        location.href="{php echo $this->createMobileUrl(&#39;Index&#39;,array(&#39;op&#39;=>&#39;display&#39;,&#39;id&#39;=>$id))}" rel="external nofollow" ;
       }
      }
     });
  },
  cancel: function () {
    // 用户取消分享后执行的回调函数
    alert(&#39;取消分享成功!&#39;);
  }
   });
});
Nach dem Login kopieren

(5) Die Funktion, die ausgeführt wird, wenn ein Verifizierungsfehler vorliegt

wx.error(function(res){
   alert(res);
});
Nach dem Login kopieren

(6) Die PHP-Seite aktualisiert die Datenbank und Datensätze die Anzahl der Freigaben und gibt die Verarbeitungsinformationen an den Benutzer zurück

if($op==&#39;share&#39;){
  $voteinfo=pdo_fetch("SELECT *FROM ".tablename(&#39;lb_vote_info&#39;)." WHERE rid = :rid and id=:id and uniacid=:uniacid and pass=:pass", array(&#39;:rid&#39; => $_GPC[&#39;rid&#39;],&#39;:uniacid&#39;=>$_W[&#39;uniacid&#39;],&#39;:pass&#39;=>1,&#39;id&#39;=>$_GPC[&#39;id&#39;]));
 $sharenum=intval($voteinfo[&#39;sharenum&#39;])+1;
 $data=array(
 &#39;sharenum&#39;=>$sharenum,
 );
$res=pdo_update(&#39;lb_vote_info&#39;, $data, array(&#39;id&#39; =>$_GPC[&#39;id&#39;],&#39;uniacid&#39;=>$_W[&#39;uniacid&#39;],&#39;rid&#39;=>$_GPC[&#39;rid&#39;]));
if(!empty($res)){
   $msg[&#39;msg&#39;]=&#39;已分享到朋友圈!&#39;;
   $msg[&#39;flags&#39;]=2;
   echo json_encode($msg);
}else{
  $msg[&#39;msg&#39;]=&#39;分享失败!&#39;;
  $msg[&#39;flags&#39;]=1;
   echo json_encode($msg);
}
}
Nach dem Login kopieren

Artikel, die Sie interessieren könnten:

Erklärung des PHP-Analyse-XML-Format-Datentool-Klassenbeispiels

Der Unterschied zwischen statischen Klassenaufrufen und Bereichsauflösungsoperatoren in PHP

Detaillierte Erläuterung von Beispielen für von PHP basierend auf Arrays implementierte Stack- und Queue-Funktionen

Das obige ist der detaillierte Inhalt vonErläuterung des WeChat-Sharings für Moments und Erfassung der Anzahl der in PHP implementierten Sharing-Funktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage