


PHP WeChat-Zahlungsentwicklungsmethode für Rückruf nach dem Scannen der Zahlung (Modus 2)
Mar 09, 2017 pm 03:40 PMTats?chlich hatte ich das Gefühl, dass ich bereits hinter der Zeit zurückgeblieben war, als ich auf Baidu nach ?WeChat-Zahlungsentwicklung – So rufen Sie nach dem Scannen der Zahlung zurück (Modus 2)“ suchte Als Antwort habe ich festgestellt, dass viele Freunde dieses Problem immer noch nicht gel?st haben, daher werde ich meine L?sungsideen mit allen teilen.
1. Laden Sie das WeChat-Zahlungs-SDK herunter (der Autor verwendet die PHP-Entwicklung als Beispiel, das SDK-Paket ist WxpayAPI_php_v3.zip)
Laden Sie das SDK-Paket herunter und entpacken Sie es im entpackten Verzeichnis. Wir sehen das folgende Verzeichnis
2. Nachdem wir die Dokumentation des WeChat-Zahlungsentwicklers konsultiert haben, haben wir erfahren, dass die Demo der WeChat-Scancode-Zahlung die native.php-Datei im Beispiel ist Verzeichnis
Der Einfachheit halber müssen wir die gesamte dekomprimierte Datei im Ordner ?wxpay“ (kann nach pers?nlichen Vorlieben benannt werden) im Stammverzeichnis der lokalen Umgebung ablegen
3 . Am Beispiel des Autors: Geben Sie http://localhost/wxpay/example/native.php in den Browser ein. Nachdem Sie die obige URL ge?ffnet haben, haben wir festgestellt, dass es zwei QR-Codes gibt Im Titel hei?t es, was wir heute studieren, ist der Modus-2-Scan-Code (wird auch vom offiziellen Modus-2-Scan-Code zum Bezahlen empfohlen)
4. Wir melden uns mit unserem Mobiltelefon bei WeChat an und scannen den QR-Code von Modus 2 auf der Seite oben und bezahlen
Hier finden wir ein interessantes Problem: Nachdem Ihre Zahlung erfolgreich war, ?ndert sich nichts auf der PC-Seite. Daher ist das Hauptproblem, das wir berücksichtigen, die Frage, wie Sie nach der Zahlung zurückrufen k?nnen .
Ich werde hier nicht zu viel Unsinn reden. Der Autor hat auf viele Methoden im Internet verwiesen und sie wie folgt zusammengefasst:
1. L?schen Sie den Scancode-Modus 1 in der native.php-Datei, nur einige verwandte HTML-Codes im Scan-Code-Modus 2 sind übrig.
2. Da im offiziellen Dokument auch angegeben ist, dass das Zahlungsergebnis des Scancode-Modus 2 eine asynchrone Antwort ist und das Zahlungsergebnis nicht aktiv zurückgibt, verwenden wir von Zeit zu Zeit Javascript, um das Zahlungsergebnis zu überwachen. und dann basierend auf dem Ergebnis der Anfrage den n?chsten Seitenrückruf durchführen. Der endgültige Code des Autors lautet wie folgt. Interessierte Freunde k?nnen darauf verweisen:
native.php-Datei
<?php ini_set('date.timezone','Asia/Shanghai'); //error_reporting(E_ERROR); require_once "../lib/WxPay.Api.php"; require_once "WxPay.NativePay.php"; require_once 'log.php'; //模式一 /** * 流程: * 1、組裝包含支付信息的url,生成二維碼 * 2、用戶掃描二維碼,進(jìn)行支付 * 3、確定支付之后,微信服務(wù)器會(huì)回調(diào)預(yù)先配置的回調(diào)地址,在【微信開放平臺(tái)-微信支付-支付配置】中進(jìn)行配置 * 4、在接到回調(diào)通知之后,用戶進(jìn)行統(tǒng)一下單支付,并返回支付信息以完成支付(見:native_notify.php) * 5、支付完成之后,微信服務(wù)器會(huì)通知支付成功 * 6、在支付成功通知中需要查單確認(rèn)是否真正支付成功(見:notify.php) */ $notify = new NativePay(); $url1 = $notify->GetPrePayUrl("123456789"); //模式二 /** * 流程: * 1、調(diào)用統(tǒng)一下單,取得code_url,生成二維碼 * 2、用戶掃描二維碼,進(jìn)行支付 * 3、支付完成之后,微信服務(wù)器會(huì)通知支付成功 * 4、在支付成功通知中需要查單確認(rèn)是否真正支付成功(見:notify.php) */ $input = new WxPayUnifiedOrder(); $input->SetBody("1分錢購買何寧"); $input->SetAttach("1分錢購買何寧"); $num=WxPayConfig::MCHID.date("YmdHis"); $input->SetOut_trade_no($num); $input->SetTotal_fee("1"); $input->SetTime_start(date("YmdHis")); $input->SetTime_expire(date("YmdHis", time() + 600)); $input->SetGoods_tag("test"); $input->SetNotify_url("http://paysdk.weixin.qq.com/example/notify.php"); $input->SetTrade_type("NATIVE"); $input->SetProduct_id("123456789"); $result = $notify->GetPayUrl($input); $url2 = $result["code_url"]; ?> <html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8"/> <meta name="viewport" content="width=device-width, initial-scale=1" /> <title>微信支付樣例</title> </head> <body> <div style="margin-left: 10px;color:#556B2F;font-size:30px;font-weight: bolder;">掃描支付模式二</div><br/> <img src="/static/imghw/default1.png" data-src="qrcode.php?data=<?php echo urlencode($url2);? alt="PHP WeChat-Zahlungsentwicklungsmethode für Rückruf nach dem Scannen der Zahlung (Modus 2)" >" class="lazy" alt="模式二掃碼支付" style="max-width:90%"/> <div id="myDiv"></div><div id="timer">0</div> <script> //設(shè)置每隔1000毫秒執(zhí)行一次load() 方法 var myIntval=setInterval(function(){load()},1000); function load(){ document.getElementById("timer").innerHTML=parseInt(document.getElementById("timer").innerHTML)+1; var xmlhttp; if (window.XMLHttpRequest){ // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); }else{ // code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function(){ if (xmlhttp.readyState==4 && xmlhttp.status==200){ trade_state=xmlhttp.responseText; if(trade_state=='SUCCESS'){ document.getElementById("myDiv").innerHTML='支付成功'; //alert(transaction_id); //延遲3000毫秒執(zhí)行tz() 方法 clearInterval(myIntval); setTimeout("location.href='success.php'",3000); }else if(trade_state=='REFUND'){ document.getElementById("myDiv").innerHTML='轉(zhuǎn)入退款'; clearInterval(myIntval); }else if(trade_state=='NOTPAY'){ document.getElementById("myDiv").innerHTML='請(qǐng)掃碼支付'; }else if(trade_state=='CLOSED'){ document.getElementById("myDiv").innerHTML='已關(guān)閉'; clearInterval(myIntval); }else if(trade_state=='REVOKED'){ document.getElementById("myDiv").innerHTML='已撤銷'; clearInterval(myIntval); }else if(trade_state=='USERPAYING'){ document.getElementById("myDiv").innerHTML='用戶支付中'; }else if(trade_state=='PAYERROR'){ document.getElementById("myDiv").innerHTML='支付失敗'; clearInterval(myIntval); } } } //orderquery.php 文件返回訂單狀態(tài),通過訂單狀態(tài)確定支付狀態(tài) xmlhttp.open("POST","orderquery.php",false); //下面這句話必須有 //把標(biāo)簽/值對(duì)添加到要發(fā)送的頭文件。 xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded"); xmlhttp.send("out_trade_no=<?php echo $num;?>"); } </script> </body> </html>
Der orderquery.php-Code wurde ebenfalls entsprechend angepasst:
<?php ini_set('date.timezone','Asia/Shanghai'); error_reporting(E_ERROR); require_once "../lib/WxPay.Api.php"; require_once 'log.php'; //初始化日志 $logHandler= new CLogFileHandler("./logs/".date('Y-m-d').'.log'); $log = Log::Init($logHandler, 15); function printf_info($data) { foreach($data as $key=>$value){ echo "<font color='#f00;'>$key</font> : $value <br/>"; } } if(isset($_REQUEST["transaction_id"]) && $_REQUEST["transaction_id"] != ""){ $transaction_id = $_REQUEST["transaction_id"]; $input = new WxPayOrderQuery(); $input->SetTransaction_id($transaction_id); //printf_info(WxPayApi::orderQuery($input)); $result=WxPayApi::orderQuery($input); echo $result['trade_state']; exit(); } if(isset($_REQUEST["out_trade_no"]) && $_REQUEST["out_trade_no"] != ""){ $out_trade_no = $_REQUEST["out_trade_no"]; $input = new WxPayOrderQuery(); $input->SetOut_trade_no($out_trade_no); //printf_info(WxPayApi::orderQuery($input)); $result=WxPayApi::orderQuery($input); echo $result['trade_state']; exit(); } ?>Neue success.php-Datei:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>微信支付成功</title> </head> <body> <br /><br /><br /><br /><br /><br /><br /> <h1>微信支付成功</h1> </body> </html>
Das Obige ist der vom Autor zusammengefasste Code. Nach dem Debuggen wurde festgestellt, dass kein Problem vorliegt. Interessierte Freunde k?nnen darauf verweisen.
Das obige ist der detaillierte Inhalt vonPHP WeChat-Zahlungsentwicklungsmethode für Rückruf nach dem Scannen der Zahlung (Modus 2). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP ist eine Open-Source-Skriptsprache, die in der Webentwicklung und serverseitigen Programmierung, insbesondere in der WeChat-Entwicklung, weit verbreitet ist. Heutzutage beginnen immer mehr Unternehmen und Entwickler, PHP für die WeChat-Entwicklung zu verwenden, da es sich zu einer wirklich leicht zu erlernenden und benutzerfreundlichen Entwicklungssprache entwickelt hat. Bei der WeChat-Entwicklung sind die Nachrichtenverschlüsselung und -entschlüsselung ein sehr wichtiges Thema, da sie die Datensicherheit betreffen. Bei Nachrichten ohne Verschlüsselungs- und Entschlüsselungsmethoden k?nnen Hacker leicht an die Daten gelangen, was eine Bedrohung für Benutzer darstellt.

Bei der Entwicklung ?ffentlicher WeChat-Konten wird h?ufig die Abstimmungsfunktion verwendet. Die Voting-Funktion ist eine tolle M?glichkeit für Nutzer, sich schnell an Interaktionen zu beteiligen und ist darüber hinaus ein wichtiges Tool für die Durchführung von Veranstaltungen und Meinungsumfragen. In diesem Artikel erfahren Sie, wie Sie PHP zur Implementierung der WeChat-Abstimmungsfunktion verwenden. Holen Sie sich die Autorisierung des offiziellen WeChat-Kontos. Zuerst müssen Sie die Autorisierung des offiziellen WeChat-Kontos einholen. Auf der ?ffentlichen WeChat-Plattform müssen Sie die API-Adresse des ?ffentlichen WeChat-Kontos, des offiziellen Kontos und des dem ?ffentlichen Konto entsprechenden Tokens konfigurieren. Bei unserer Entwicklung mit der PHP-Sprache müssen wir den von WeChat offiziell bereitgestellten PH verwenden

Mit der Popularit?t von WeChat beginnen immer mehr Unternehmen, es als Marketinginstrument zu nutzen. Die WeChat-Gruppen-Messaging-Funktion ist für Unternehmen eines der wichtigen Mittel zur Durchführung von WeChat-Marketing. Wenn Sie sich jedoch nur auf den manuellen Versand verlassen, ist dies für Vermarkter eine ?u?erst zeitaufw?ndige und mühsame Aufgabe. Daher ist es besonders wichtig, ein WeChat-Massen-Messaging-Tool zu entwickeln. In diesem Artikel wird erl?utert, wie Sie mit PHP WeChat-Massen-Messaging-Tools entwickeln. 1. Vorbereitungsarbeiten Um WeChat-Massen-Messaging-Tools zu entwickeln, müssen wir die folgenden technischen Punkte beherrschen: Grundkenntnisse der PHP-Entwicklung der ?ffentlichen WeChat-Plattform Entwicklungstools: Sub

WeChat ist derzeit eine der sozialen Plattformen mit der gr??ten Nutzerbasis weltweit. Mit der Popularit?t des mobilen Internets beginnen immer mehr Unternehmen die Bedeutung des WeChat-Marketings zu erkennen. Bei der Durchführung von WeChat-Marketing ist der Kundenservice ein entscheidender Bestandteil. Um das Kundenservice-Chatfenster besser verwalten zu k?nnen, k?nnen wir die PHP-Sprache für die WeChat-Entwicklung verwenden. 1. Einführung in die PHP-WeChat-Entwicklung PHP ist eine serverseitige Open-Source-Skriptsprache, die im Bereich der Webentwicklung weit verbreitet ist. In Kombination mit der Entwicklungsschnittstelle der ?ffentlichen WeChat-Plattform k?nnen wir die PHP-Sprache zur Durchführung von WeChat verwenden

Bei der Entwicklung ?ffentlicher WeChat-Konten ist die Benutzer-Tag-Verwaltung eine sehr wichtige Funktion, die es Entwicklern erm?glicht, ihre Benutzer besser zu verstehen und zu verwalten. In diesem Artikel wird erl?utert, wie Sie mit PHP die WeChat-Benutzer-Tag-Verwaltungsfunktion implementieren. 1. Erhalten Sie die OpenID des WeChat-Benutzers. Bevor wir die WeChat-Benutzer-Tag-Verwaltungsfunktion verwenden, müssen wir zun?chst die OpenID des Benutzers abrufen. Bei der Entwicklung ?ffentlicher WeChat-Konten ist es üblich, die OpenID durch Benutzerautorisierung zu erhalten. Nachdem die Benutzerautorisierung abgeschlossen ist, k?nnen wir den Benutzer über den folgenden Code abrufen

Da WeChat zu einem immer wichtigeren Kommunikationsmittel im Leben der Menschen wird, wird seine agile Messaging-Funktion schnell von einer gro?en Anzahl von Unternehmen und Einzelpersonen bevorzugt. Für Unternehmen ist die Entwicklung von WeChat zu einer Marketingplattform zu einem Trend geworden, und die Bedeutung der WeChat-Entwicklung ist nach und nach immer wichtiger geworden. Unter diesen wird die Gruppensendefunktion noch h?ufiger verwendet. Wie implementiert man als PHP-Programmierer Datens?tze zum Senden von Gruppennachrichten? Im Folgenden erhalten Sie eine kurze Einführung. 1. Verstehen Sie die Entwicklungskenntnisse im Zusammenhang mit ?ffentlichen WeChat-Konten, bevor Sie verstehen, wie Datens?tze zum Senden von Gruppennachrichten implementiert werden

So verwenden Sie PHP zur Entwicklung ?ffentlicher WeChat-Konten. ?ffentliche WeChat-Konten sind für viele Unternehmen zu einem wichtigen Kanal für Werbung und Interaktion geworden. PHP als h?ufig verwendete Websprache kann auch zur Entwicklung ?ffentlicher WeChat-Konten verwendet werden. In diesem Artikel werden die spezifischen Schritte zur Verwendung von PHP zum Entwickeln ?ffentlicher WeChat-Konten vorgestellt. Schritt 1: Erhalten Sie das Entwicklerkonto des offiziellen WeChat-Kontos. Bevor Sie mit der Entwicklung des offiziellen WeChat-Kontos beginnen, müssen Sie ein Entwicklerkonto des offiziellen WeChat-Kontos beantragen. Informationen zum spezifischen Registrierungsprozess finden Sie auf der offiziellen Website der ?ffentlichen WeChat-Plattform

Mit der Entwicklung des Internets und mobiler Smart-Ger?te ist WeChat zu einem unverzichtbaren Bestandteil im sozialen Bereich und im Marketing geworden. In diesem zunehmend digitalen Zeitalter ist die Verwendung von PHP für die WeChat-Entwicklung zum Fokus vieler Entwickler geworden. In diesem Artikel werden haupts?chlich die relevanten Wissenspunkte zur Verwendung von PHP für die WeChat-Entwicklung sowie einige Tipps und Vorsichtsma?nahmen vorgestellt. 1. Vorbereitung der Entwicklungsumgebung Bevor Sie WeChat entwickeln, müssen Sie zun?chst die entsprechende Entwicklungsumgebung vorbereiten. Insbesondere müssen Sie die PHP-Betriebsumgebung und die ?ffentliche WeChat-Plattform installieren
