日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
ThinkPHP框架下如何實現(xiàn)微信支付功能-創(chuàng)新互聯(lián)

這篇文章將為大家詳細講解有關ThinkPHP框架下如何實現(xiàn)微信支付功能,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

成都創(chuàng)新互聯(lián)公司長期為成百上千家客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為閬中企業(yè)提供專業(yè)的網(wǎng)站制作、成都網(wǎng)站建設,閬中網(wǎng)站改版等技術服務。擁有十年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

注意:微信公眾號支付,強烈建議使用外網(wǎng)可訪問的鏈接測試,否則即便代碼正確也無法調(diào)出支付界面,可使用草料二維碼生成可掃描圖片,也可直接在微信中輸入網(wǎng)址。

使用框架:ThinkPHP 3.2.3

一.微信公眾平臺信息配置

1).進入微信公眾平臺

由左側(cè)的“微信支付”進入配置界面,添加或修改正確的支付授權目錄,注意該目錄的要求,多建議精確到上一級目錄,并加斜線 /ThinkPHP框架下如何實現(xiàn)微信支付功能


2).授權域名

注意】:

    域名的確定都是工信部備案過的,初次開發(fā)的很容易漏掉“www”,而截圖中不加“www”是因為我們備案的原因,記得只去掉“http://”。

ThinkPHP框架下如何實現(xiàn)微信支付功能


二.ThinkPHP 框架,相應代碼配置

    公眾號支付->場景參考

1).Weixinpay.php文件處理

    導入 Weixinpay.php文件到“/ThinkPHP/Library/Vendor/Weixinpay/”目錄下

    ThinkPHP框架下如何實現(xiàn)微信支付功能

    2).配置

    在項目的配置文件中,添加類此如下的代碼,,其中的值需要自己根據(jù)實際公眾號的信息進行配置【注意】:     很多人會搞錯MCHID而造成不必要的時間浪費,具體開發(fā)參照官方文檔。

/Application/Common/Conf/config.php

ThinkPHP框架下如何實現(xiàn)微信支付功能


    3).支付函數(shù)的編輯

     即進行點擊支付后的界面,其自動調(diào)用微信的默認支付框架。

【注意】

    進行支付邏輯的處理,一定要記住,要求使用GET方式請求此頁面,即使用 get 方式將總金額、訂單號提交過來進行處理,$data 可以接收

    ThinkPHP框架下如何實現(xiàn)微信支付功能


4).getParameters修改

    上述文件,需要修改其中的 getParameters()方法,其中標記的位置,是根據(jù)實際的業(yè)務情況而從數(shù)據(jù)庫獲取的。具體代碼后面會有提供。

ThinkPHP框架下如何實現(xiàn)微信支付功能

5).上述函數(shù),需要html的配合:/M/View/Cart/pay.html

    ThinkPHP框架下如何實現(xiàn)微信支付功能

    6).回調(diào)函數(shù)的編輯

【注意】

    該路徑必須要與配置文件中的回調(diào)路徑一致,此回調(diào)函數(shù),是根據(jù)微信是否真正完成支付后的數(shù)據(jù)更新,一般此處進行訂單狀態(tài)的修改,比如,我在此處異步執(zhí)行的是將訂單號的支付狀態(tài)參數(shù)由0置為1.

    [個人測試發(fā)現(xiàn),此處 session 和 cookie 的設置都失效,僅做參考]

ThinkPHP框架下如何實現(xiàn)微信支付功能
【注意】: 

先前發(fā)現(xiàn),因為微信服務的設計,會多次回調(diào) notify()以判斷是否真正的支付成功,而簡單的update 操作是無法檢測的,為了同自己的平臺相關聯(lián),同理需要進行狀態(tài)的判斷,否則不可避免的會多次執(zhí)行 notify_wx()中的邏輯處理

    7).如果是整合到自己的項目中

        需要在自己的公共函數(shù)中增加 curl_get_contentsThinkPHP框架下如何實現(xiàn)微信支付功能


    8).補充:

    (1).提醒:所提供的源代碼,剝離出了微信支付的核心,注意html頁面中對jquery.js的正確引用,pay.html基本是從微信公眾號官網(wǎng)直接下載的demo頁,同時使用代碼前請配置微信支付url,且外網(wǎng)測試。

(2).此功能開發(fā)中所遇到的各種坑!強烈建議參考、批評.【重要

三.微信掃碼支付

1).場景分析

>場景參考

>一般的網(wǎng)站開發(fā)中,如果是手機端,多數(shù)使用上面提到的公眾號支付方式,而掃碼支付多數(shù)出現(xiàn)在PC端,當然也有部分手機網(wǎng)站有生成二維碼的需求,但是由于微信瀏覽器的識別限制,一種情況是直接在微信端瀏覽的購物網(wǎng)站,通過長按二維碼就可以識別;另一種情況是在另外的手機端瀏覽器,比如百度、頭條。 >如此一來除非用另一部手機進行掃碼支付,或者將二維碼截圖保存后,再到微信中找到圖片進行長按識別。顯然后者用法過于繁瑣,所以處分針對于微信瀏覽器開發(fā),否則不建議使用掃碼支付功能,而在PC端開發(fā)則適合使用該功能

2).功能開發(fā)

通用上文中介紹的功能開發(fā)步驟 1)、2)、3)、6)、7)

3).補充函數(shù)

在 common/function.php 中補充函數(shù) weixinpay()和 qrcode()ThinkPHP框架下如何實現(xiàn)微信支付功能

4).設計顯示微信掃碼的頁面

    我定的頁面為 M/Order/mobilepayment.html,即通過訪問 Order/wechatpaymenter ,同時調(diào)用微信生成二維碼,在該頁面的 標簽中顯示出來,具體代碼見后面的附錄ThinkPHP框架下如何實現(xiàn)微信支付功能


5).補充 wechatpaymenter 方法。

ThinkPHP框架下如何實現(xiàn)微信支付功能



6).注意:

    模式二生成的二維碼也是有時間限制的,同時,不能有權限攔截,并且,二維碼的生成是根據(jù)訂單號確定的,如果生成一次,那么很可能第二次就不顯示,建議可用 time()代替測試。

掃碼支付模式參考

7).運行結果截圖

在信息配置正確的情況下,功能結果如圖所示

ThinkPHP框架下如何實現(xiàn)微信支付功能


關于“ThinkPHP框架下如何實現(xiàn)微信支付功能”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。


當前文章:ThinkPHP框架下如何實現(xiàn)微信支付功能-創(chuàng)新互聯(lián)
文章URL:http://www.dlmjj.cn/article/ceoieh.html